(function($){ 'use strict'; if(typeof wpcf7==='undefined'||wpcf7===null){ return; } wpcf7=$.extend({ cached: 0, inputs: [] }, wpcf7); $(function(){ wpcf7.supportHtml5=(function(){ var features={}; var input=document.createElement('input'); features.placeholder='placeholder' in input; var inputTypes=[ 'email', 'url', 'tel', 'number', 'range', 'date' ]; $.each(inputTypes, function(index, value){ input.setAttribute('type', value); features[ value ]=input.type!=='text'; }); return features; })(); $('div.wpcf7 > form').each(function(){ var $form=$(this); wpcf7.initForm($form); if(wpcf7.cached){ wpcf7.refill($form); }}); }); wpcf7.getId=function(form){ return parseInt($('input[name="_wpcf7"]', form).val(), 10); }; wpcf7.initForm=function(form){ var $form=$(form); wpcf7.setStatus($form, 'init'); $form.submit(function(event){ if(! wpcf7.supportHtml5.placeholder){ $('[placeholder].placeheld', $form).each(function(i, n){ $(n).val('').removeClass('placeheld'); }); } if(typeof window.FormData==='function'){ wpcf7.submit($form); event.preventDefault(); }}); $('.wpcf7-submit', $form).after(''); wpcf7.toggleSubmit($form); $form.on('click', '.wpcf7-acceptance', function(){ wpcf7.toggleSubmit($form); }); $('.wpcf7-exclusive-checkbox', $form).on('click', 'input:checkbox', function(){ var name=$(this).attr('name'); $form.find('input:checkbox[name="' + name + '"]').not(this).prop('checked', false); }); $('.wpcf7-list-item.has-free-text', $form).each(function(){ var $freetext=$(':input.wpcf7-free-text', this); var $wrap=$(this).closest('.wpcf7-form-control'); if($(':checkbox, :radio', this).is(':checked')){ $freetext.prop('disabled', false); }else{ $freetext.prop('disabled', true); } $wrap.on('change', ':checkbox, :radio', function(){ var $cb=$('.has-free-text', $wrap).find(':checkbox, :radio'); if($cb.is(':checked')){ $freetext.prop('disabled', false).focus(); }else{ $freetext.prop('disabled', true); }}); }); if(! wpcf7.supportHtml5.placeholder){ $('[placeholder]', $form).each(function(){ $(this).val($(this).attr('placeholder')); $(this).addClass('placeheld'); $(this).focus(function(){ if($(this).hasClass('placeheld')){ $(this).val('').removeClass('placeheld'); }}); $(this).blur(function(){ if(''===$(this).val()){ $(this).val($(this).attr('placeholder')); $(this).addClass('placeheld'); }}); }); } if(wpcf7.jqueryUi&&! wpcf7.supportHtml5.date){ $form.find('input.wpcf7-date[type="date"]').each(function(){ $(this).datepicker({ dateFormat: 'yy-mm-dd', minDate: new Date($(this).attr('min')), maxDate: new Date($(this).attr('max')) }); }); } if(wpcf7.jqueryUi&&! wpcf7.supportHtml5.number){ $form.find('input.wpcf7-number[type="number"]').each(function(){ $(this).spinner({ min: $(this).attr('min'), max: $(this).attr('max'), step: $(this).attr('step') }); }); } wpcf7.resetCounter($form); $form.on('change', '.wpcf7-validates-as-url', function(){ var val=$.trim($(this).val()); if(val && ! val.match(/^[a-z][a-z0-9.+-]*:/i) && -1!==val.indexOf('.')){ val=val.replace(/^\/+/, ''); val='http://' + val; } $(this).val(val); }); }; wpcf7.submit=function(form){ if(typeof window.FormData!=='function'){ return; } var $form=$(form); $('.ajax-loader', $form).addClass('is-active'); wpcf7.clearResponse($form); var formData=new FormData($form.get(0)); var detail={ id: $form.closest('div.wpcf7').attr('id'), status: 'init', inputs: [], formData: formData }; $.each($form.serializeArray(), function(i, field){ if('_wpcf7'==field.name){ detail.contactFormId=field.value; }else if('_wpcf7_version'==field.name){ detail.pluginVersion=field.value; }else if('_wpcf7_locale'==field.name){ detail.contactFormLocale=field.value; }else if('_wpcf7_unit_tag'==field.name){ detail.unitTag=field.value; }else if('_wpcf7_container_post'==field.name){ detail.containerPostId=field.value; }else if(field.name.match(/^_/)){ }else{ detail.inputs.push(field); }}); wpcf7.triggerEvent($form.closest('div.wpcf7'), 'beforesubmit', detail); var ajaxSuccess=function(data, status, xhr, $form){ detail.id=$(data.into).attr('id'); detail.status=data.status; detail.apiResponse=data; switch(data.status){ case 'init': wpcf7.setStatus($form, 'init'); break; case 'validation_failed': $.each(data.invalid_fields, function(i, n){ $(n.into, $form).each(function(){ wpcf7.notValidTip(this, n.message); $('.wpcf7-form-control', this).addClass('wpcf7-not-valid'); $('[aria-invalid]', this).attr('aria-invalid', 'true'); }); }); wpcf7.setStatus($form, 'invalid'); wpcf7.triggerEvent(data.into, 'invalid', detail); break; case 'acceptance_missing': wpcf7.setStatus($form, 'unaccepted'); wpcf7.triggerEvent(data.into, 'unaccepted', detail); break; case 'spam': wpcf7.setStatus($form, 'spam'); wpcf7.triggerEvent(data.into, 'spam', detail); break; case 'aborted': wpcf7.setStatus($form, 'aborted'); wpcf7.triggerEvent(data.into, 'aborted', detail); break; case 'mail_sent': wpcf7.setStatus($form, 'sent'); wpcf7.triggerEvent(data.into, 'mailsent', detail); break; case 'mail_failed': wpcf7.setStatus($form, 'failed'); wpcf7.triggerEvent(data.into, 'mailfailed', detail); break; default: wpcf7.setStatus($form, 'custom-' + data.status.replace(/[^0-9a-z]+/i, '-') ); } wpcf7.refill($form, data); wpcf7.triggerEvent(data.into, 'submit', detail); if('mail_sent'==data.status){ $form.each(function(){ this.reset(); }); wpcf7.toggleSubmit($form); wpcf7.resetCounter($form); } if(! wpcf7.supportHtml5.placeholder){ $form.find('[placeholder].placeheld').each(function(i, n){ $(n).val($(n).attr('placeholder')); }); } $('.wpcf7-response-output', $form) .html('').append(data.message).slideDown('fast'); $('.screen-reader-response', $form.closest('.wpcf7')).each(function(){ var $response=$(this); $response.html('').append(data.message); if(data.invalid_fields){ var $invalids=$(''); $.each(data.invalid_fields, function(i, n){ if(n.idref){ var $li=$('
  • ').append($('').attr('href', '#' + n.idref).append(n.message)); }else{ var $li=$('
  • ').append(n.message); } $invalids.append($li); }); $response.append($invalids); } $response.focus(); }); if(data.posted_data_hash){ $form.find('input[name="_wpcf7_posted_data_hash"]').first() .val(data.posted_data_hash); }}; $.ajax({ type: 'POST', url: wpcf7.apiSettings.getRoute('/contact-forms/' + wpcf7.getId($form) + '/feedback'), data: formData, dataType: 'json', processData: false, contentType: false }).done(function(data, status, xhr){ ajaxSuccess(data, status, xhr, $form); $('.ajax-loader', $form).removeClass('is-active'); }).fail(function(xhr, status, error){ var $e=$('
    ').text(error.message); $form.after($e); }); }; wpcf7.triggerEvent=function(target, name, detail){ var event=new CustomEvent('wpcf7' + name, { bubbles: true, detail: detail }); $(target).get(0).dispatchEvent(event); }; wpcf7.setStatus=function(form, status){ var $form=$(form); var prevStatus=$form.data('status'); $form.data('status', status); $form.addClass(status); if(prevStatus&&prevStatus!==status){ $form.removeClass(prevStatus); }} wpcf7.toggleSubmit=function(form, state){ var $form=$(form); var $submit=$('input:submit', $form); if(typeof state!=='undefined'){ $submit.prop('disabled', ! state); return; } if($form.hasClass('wpcf7-acceptance-as-validation')){ return; } $submit.prop('disabled', false); $('.wpcf7-acceptance', $form).each(function(){ var $span=$(this); var $input=$('input:checkbox', $span); if(! $span.hasClass('optional')){ if($span.hasClass('invert')&&$input.is(':checked') || ! $span.hasClass('invert')&&! $input.is(':checked')){ $submit.prop('disabled', true); return false; }} }); }; wpcf7.resetCounter=function(form){ var $form=$(form); $('.wpcf7-character-count', $form).each(function(){ var $count=$(this); var name=$count.attr('data-target-name'); var down=$count.hasClass('down'); var starting=parseInt($count.attr('data-starting-value'), 10); var maximum=parseInt($count.attr('data-maximum-value'), 10); var minimum=parseInt($count.attr('data-minimum-value'), 10); var updateCount=function(target){ var $target=$(target); var length=$target.val().length; var count=down ? starting - length:length; $count.attr('data-current-value', count); $count.text(count); if(maximum&&maximum < length){ $count.addClass('too-long'); }else{ $count.removeClass('too-long'); } if(minimum&&length < minimum){ $count.addClass('too-short'); }else{ $count.removeClass('too-short'); }}; $(':input[name="' + name + '"]', $form).each(function(){ updateCount(this); $(this).keyup(function(){ updateCount(this); }); }); }); }; wpcf7.notValidTip=function(target, message){ var $target=$(target); $('.wpcf7-not-valid-tip', $target).remove(); $('').attr({ 'class': 'wpcf7-not-valid-tip', 'role': 'alert', 'aria-hidden': 'true', }).text(message).appendTo($target); if($target.is('.use-floating-validation-tip *')){ var fadeOut=function(target){ $(target).not(':hidden').animate({ opacity: 0 }, 'fast', function(){ $(this).css({ 'z-index': -100 }); }); }; $target.on('mouseover', '.wpcf7-not-valid-tip', function(){ fadeOut(this); }); $target.on('focus', ':input', function(){ fadeOut($('.wpcf7-not-valid-tip', $target)); }); }}; wpcf7.refill=function(form, data){ var $form=$(form); var refillCaptcha=function($form, items){ $.each(items, function(i, n){ $form.find(':input[name="' + i + '"]').val(''); $form.find('img.wpcf7-captcha-' + i).attr('src', n); var match=/([0-9]+)\.(png|gif|jpeg)$/.exec(n); $form.find('input:hidden[name="_wpcf7_captcha_challenge_' + i + '"]').attr('value', match[ 1 ]); }); }; var refillQuiz=function($form, items){ $.each(items, function(i, n){ $form.find(':input[name="' + i + '"]').val(''); $form.find(':input[name="' + i + '"]').siblings('span.wpcf7-quiz-label').text(n[ 0 ]); $form.find('input:hidden[name="_wpcf7_quiz_answer_' + i + '"]').attr('value', n[ 1 ]); }); }; if(typeof data==='undefined'){ $.ajax({ type: 'GET', url: wpcf7.apiSettings.getRoute('/contact-forms/' + wpcf7.getId($form) + '/refill'), beforeSend: function(xhr){ var nonce=$form.find(':input[name="_wpnonce"]').val(); if(nonce){ xhr.setRequestHeader('X-WP-Nonce', nonce); }}, dataType: 'json' }).done(function(data, status, xhr){ if(data.captcha){ refillCaptcha($form, data.captcha); } if(data.quiz){ refillQuiz($form, data.quiz); }}); }else{ if(data.captcha){ refillCaptcha($form, data.captcha); } if(data.quiz){ refillQuiz($form, data.quiz); }} }; wpcf7.clearResponse=function(form){ var $form=$(form); $form.siblings('.screen-reader-response').html(''); $('.wpcf7-not-valid-tip', $form).remove(); $('[aria-invalid]', $form).attr('aria-invalid', 'false'); $('.wpcf7-form-control', $form).removeClass('wpcf7-not-valid'); $('.wpcf7-response-output', $form).hide().empty(); }; wpcf7.apiSettings.getRoute=function(path){ var url=wpcf7.apiSettings.root; url=url.replace(wpcf7.apiSettings.namespace, wpcf7.apiSettings.namespace + path); return url; };})(jQuery); (function (){ if(typeof window.CustomEvent==="function") return false; function CustomEvent(event, params){ params=params||{ bubbles: false, cancelable: false, detail: undefined }; var evt=document.createEvent('CustomEvent'); evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail); return evt; } CustomEvent.prototype=window.Event.prototype; window.CustomEvent=CustomEvent; })(); jQuery(document).ready(function ($){ "use strict"; function NectarSocial(){ this.$body=$('body'); this.$window=$(window); this.$wpAdminBar=$('#wpadminbar'); this.usingMobileBrowser=(navigator.userAgent.match(/(Android|iPod|iPhone|iPad|BlackBerry|IEMobile|Opera Mini)/)) ? true:false; this.mouseEvents(); this.nectarLove(); if($('body').find('.nectar-social.fixed')){ this.fixedStyle(); }} NectarSocial.prototype.mouseEvents=function(){ this.$body.on('click', '#single-below-header .nectar-social a', function (){ return false; }); $('body.single-product .nectar-social').addClass('woo'); this.$body.on('click', '.facebook-share:not(.inactive)', this.facebookShare); this.$body.on('click', '.nectar-social:not(".woo") .twitter-share:not(.inactive)', this.twitterShare); this.$body.on('click', '.nectar-social.woo .twitter-share', this.wooTwitterShare); this.$body.on('click', '.nectar-social:not(".woo") .linkedin-share:not(.inactive)', this.linkedInShare); this.$body.on('click', '.nectar-social.woo .linkedin-share', this.woolinkedInShare); this.$body.on('click', '.nectar-social:not(".woo") .pinterest-share:not(.inactive)', this.pinterestShare); this.$body.on('click', '.nectar-social.woo .pinterest-share', this.wooPinterestShare); this.$body.on('click', '.nectar-social.fixed > a', function (){ return false; }); if(!this.usingMobileBrowser){ var $socialTimeout; this.$body.on('mouseenter', '.nectar-social.hover .share-btn', function (){ clearTimeout($socialTimeout); if($(this).parents('[id*="-meta"]').length > 0){ $(this).parents('[id*="-meta"]').addClass('social-hovered'); } if($(this).parents('#single-below-header').length > 0){ $(this).parents('#single-below-header').addClass('social-hovered'); } $(this).parent().addClass('visible'); }); this.$body.on('mouseleave', '.nectar-social.hover', function (){ var $that=$(this); $socialTimeout=setTimeout(function (){ $that.removeClass('visible'); if($that.parents('[id*="-meta"]').length > 0){ $that.parents('[id*="-meta"]').removeClass('social-hovered'); } if($that.parents('#single-below-header').length > 0){ $that.parents('#single-below-header').removeClass('social-hovered'); }}, 200); }); }else{ this.$body.on('click', '.nectar-social.hover .share-btn', function (){ if($(this).parents('[id*="-meta"]').length > 0){ $(this).parents('[id*="-meta"]').addClass('social-hovered'); } if($(this).parents('#single-below-header').length > 0){ $(this).parents('#single-below-header').addClass('social-hovered'); } $(this).parent().addClass('visible'); return false; }); }}; NectarSocial.prototype.facebookShare=function(){ var windowLocation=window.location.href.replace(window.location.hash, ''); window.open('https://www.facebook.com/sharer/sharer.php?u=' + windowLocation, "facebookWindow", "height=380,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0"); return false; }; NectarSocial.prototype.facebookShare=function(){ var windowLocation=window.location.href.replace(window.location.hash, ''); window.open('https://www.facebook.com/sharer/sharer.php?u=' + windowLocation, "facebookWindow", "height=380,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0"); return false; }; NectarSocial.prototype.twitterShare=function(){ var windowLocation=window.location.href.replace(window.location.hash, ''); var $pageTitle; if($(".section-title h1").length > 0){ $pageTitle=encodeURIComponent($(".section-title h1").text()); }else{ $pageTitle=encodeURIComponent($(document).find("title").text()); } window.open('http://twitter.com/intent/tweet?text=' + $pageTitle + ' ' + windowLocation, "twitterWindow", "height=380,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0"); return false; }; NectarSocial.prototype.wooTwitterShare=function(){ var windowLocation=window.location.href.replace(window.location.hash, ''); window.open('http://twitter.com/intent/tweet?text=' + $("h1.product_title").text() + ' ' + windowLocation, "twitterWindow", "height=380,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0"); return false; }; NectarSocial.prototype.linkedInShare=function(){ var windowLocation=window.location.href.replace(window.location.hash, ''); var $pageTitle; if($(".section-title h1").length > 0){ $pageTitle=encodeURIComponent($(".section-title h1").text()); }else{ $pageTitle=encodeURIComponent($(document).find("title").text()); } window.open('http://www.linkedin.com/shareArticle?mini=true&url=' + windowLocation + '&title=' + $pageTitle + '', "linkedInWindow", "height=480,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0"); return false; }; NectarSocial.prototype.woolinkedInShare=function(){ var windowLocation=window.location.href.replace(window.location.hash, ''); window.open('http://www.linkedin.com/shareArticle?mini=true&url=' + windowLocation + '&title=' + $("h1.product_title").text(), "twitterWindow", "height=380,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0"); return false; }; NectarSocial.prototype.pinterestShare=function(){ var windowLocation=window.location.href.replace(window.location.hash, ''); var $sharingImg=($('.single-portfolio').length > 0&&$('div[data-featured-img]').attr('data-featured-img')!='empty') ? $('div[data-featured-img]').attr('data-featured-img'):$('#ajax-content-wrap img').first().attr('src'); var $pageTitle; if($(".section-title h1").length > 0){ $pageTitle=encodeURIComponent($(".section-title h1").text()); }else{ $pageTitle=encodeURIComponent($(document).find("title").text()); } window.open('http://pinterest.com/pin/create/button/?url=' + windowLocation + '&media=' + $sharingImg + '&description=' + $pageTitle, "pinterestWindow", "height=640,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0"); return false; }; NectarSocial.prototype.wooPinterestShare=function (){ var $imgToShare=($('img.attachment-shop_single').length > 0) ? $('img.attachment-shop_single').first().attr('src'):$('.single-product-main-image img').first().attr('src'); var windowLocation=window.location.href.replace(window.location.hash, ''); window.open('http://pinterest.com/pin/create/button/?url=' + windowLocation + '&media=' + $imgToShare + '&description=' + $('h1.product_title').text(), "pinterestWindow", "height=640,width=660,resizable=0,toolbar=0,menubar=0,status=0,location=0,scrollbars=0"); return false; }; NectarSocial.prototype.nectarLove=function(){ this.$body.on('click', '.nectar-love', function (){ var $loveLink=$(this), $id=$(this).attr('id'), $that=$(this); if($loveLink.hasClass('loved')||$(this).hasClass('inactive')){ return false; } var $dataToPass={ action: 'nectar-love', loves_id: $id, love_nonce: window.nectarLove.loveNonce }; $.post(window.nectarLove.ajaxurl, $dataToPass, function (data){ $loveLink.find('.nectar-love-count').html(data); $loveLink.addClass('loved').attr('title', 'You already love this!'); $that.find('.icon-salient-heart-2').addClass('loved'); }); $(this).addClass('inactive'); return false; }); }; NectarSocial.prototype.fixedStyle=function(){ $('.wpb_wrapper .nectar-social.fixed').each(function(i){ if(i!==0){ $(this).remove(); }else{ var $fixedMarkup=$(this).clone(); $('body').append($fixedMarkup); $(this).remove(); }}); function showFixedSharing(){ if($(window).scrollTop() > 150){ $('.nectar-social.fixed').addClass('visible'); $(window).off('scroll', showFixedSharing); $(window).on('scroll', hideFixedSharing); }} function hideFixedSharing(){ if($(window).scrollTop() < 150){ $('.nectar-social.fixed').removeClass('visible'); $(window).off('scroll', hideFixedSharing); $(window).on('scroll', showFixedSharing); }} if($(window).width() < 1000&&$('.nectar-social.fixed').length > 0){ if($(window).scrollTop() > 150){ $(window).on('scroll', hideFixedSharing); }else{ $(window).on('scroll', showFixedSharing); }} $(window).on('smartresize',function (){ if($(window).width() > 1000){ $('.nectar-social.fixed').addClass('visible'); }else if($(window).scrollTop() < 150){ $(window).off('scroll', hideFixedSharing); $(window).on('scroll', showFixedSharing); $('.nectar-social.fixed').removeClass('visible'); }else{ $(window).off('scroll', showFixedSharing); $(window).on('scroll', hideFixedSharing); }}); }; var nectarSocialInit=new NectarSocial(); window.NectarSocial=NectarSocial; }); (function(){ document.addEventListener('DOMContentLoaded', function(event){ wpcf7_recaptcha.execute=function(action){ grecaptcha.execute(wpcf7_recaptcha.sitekey, { action: action } ).then(function(token){ var event=new CustomEvent('wpcf7grecaptchaexecuted', { detail: { action: action, token: token, }, }); document.dispatchEvent(event); }); }; wpcf7_recaptcha.execute_on_homepage=function(){ wpcf7_recaptcha.execute(wpcf7_recaptcha.actions[ 'homepage' ]); }; wpcf7_recaptcha.execute_on_contactform=function(){ wpcf7_recaptcha.execute(wpcf7_recaptcha.actions[ 'contactform' ]); }; grecaptcha.ready(wpcf7_recaptcha.execute_on_homepage ); document.addEventListener('change', wpcf7_recaptcha.execute_on_contactform ); document.addEventListener('wpcf7submit', wpcf7_recaptcha.execute_on_homepage ); }); document.addEventListener('wpcf7grecaptchaexecuted', function(event){ var fields=document.querySelectorAll("form.wpcf7-form input[name='_wpcf7_recaptcha_response']" ); for(var i=0; i < fields.length; i++){ var field=fields[ i ]; field.setAttribute('value', event.detail.token); }}); })(); jQuery.easing['jswing']=jQuery.easing['swing']; jQuery.extend(jQuery.easing, { def: 'easeOutQuad', swing: function (x, t, b, c, d){ return c*(t/=d)*t + b; }, easeInQuad: function (x, t, b, c, d){ return c*(t/=d)*t + b; }, easeOutQuad: function (x, t, b, c, d){ return -c *(t/=d)*(t-2) + b; }, easeInOutQuad: function (x, t, b, c, d){ if((t/=d/2) < 1) return c/2*t*t + b; return -c/2 * ((--t)*(t-2) - 1) + b; }, easeInCubic: function (x, t, b, c, d){ return c*(t/=d)*t*t + b; }, easeOutCubic: function (x, t, b, c, d){ return c*((t=t/d-1)*t*t + 1) + b; }, easeInOutCubic: function (x, t, b, c, d){ if((t/=d/2) < 1) return c/2*t*t*t + b; return c/2*((t-=2)*t*t + 2) + b; }, easeInQuart: function (x, t, b, c, d){ return c*(t/=d)*t*t*t + b; }, easeOutQuart: function (x, t, b, c, d){ return -c * ((t=t/d-1)*t*t*t - 1) + b; }, easeInOutQuart: function (x, t, b, c, d){ if((t/=d/2) < 1) return c/2*t*t*t*t + b; return -c/2 * ((t-=2)*t*t*t - 2) + b; }, easeInQuint: function (x, t, b, c, d){ return c*(t/=d)*t*t*t*t + b; }, easeOutQuint: function (x, t, b, c, d){ return c*((t=t/d-1)*t*t*t*t + 1) + b; }, easeInOutQuint: function (x, t, b, c, d){ if((t/=d/2) < 1) return c/2*t*t*t*t*t + b; return c/2*((t-=2)*t*t*t*t + 2) + b; }, easeInSine: function (x, t, b, c, d){ return -c * Math.cos(t/d * (Math.PI/2)) + c + b; }, easeOutSine: function (x, t, b, c, d){ return c * Math.sin(t/d * (Math.PI/2)) + b; }, easeInOutSine: function (x, t, b, c, d){ return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b; }, easeInExpo: function (x, t, b, c, d){ return (t==0) ? b:c * Math.pow(2, 10 * (t/d - 1)) + b; }, easeOutExpo: function (x, t, b, c, d){ return (t==d) ? b+c:c * (-Math.pow(2, -10 * t/d) + 1) + b; }, easeInOutExpo: function (x, t, b, c, d){ if(t==0) return b; if(t==d) return b+c; if((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b; return c/2 * (-Math.pow(2, -10 * --t) + 2) + b; }, easeInCirc: function (x, t, b, c, d){ return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b; }, easeOutCirc: function (x, t, b, c, d){ return c * Math.sqrt(1 - (t=t/d-1)*t) + b; }, easeInOutCirc: function (x, t, b, c, d){ if((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b; return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b; }, easeInElastic: function (x, t, b, c, d){ var s=1.70158;var p=0;var a=c; if(t==0) return b; if((t/=d)==1) return b+c; if(!p) p=d*.3; if(a < Math.abs(c)){ a=c; var s=p/4; } else var s=p/(2*Math.PI) * Math.asin (c/a); return -(a*Math.pow(2,10*(t-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)) + b; }, easeOutElastic: function (x, t, b, c, d){ var s=1.70158;var p=0;var a=c; if(t==0) return b; if((t/=d)==1) return b+c; if(!p) p=d*.3; if(a < Math.abs(c)){ a=c; var s=p/4; } else var s=p/(2*Math.PI) * Math.asin (c/a); return a*Math.pow(2,-10*t) * Math.sin((t*d-s)*(2*Math.PI)/p) + c + b; }, easeInOutElastic: function (x, t, b, c, d){ var s=1.70158;var p=0;var a=c; if(t==0) return b; if((t/=d/2)==2) return b+c; if(!p) p=d*(.3*1.5); if(a < Math.abs(c)){ a=c; var s=p/4; } else var s=p/(2*Math.PI) * Math.asin (c/a); if(t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)) + b; return a*Math.pow(2,-10*(t-=1)) * Math.sin((t*d-s)*(2*Math.PI)/p)*.5 + c + b; }, easeInBack: function (x, t, b, c, d, s){ if(s==undefined) s=1.70158; return c*(t/=d)*t*((s+1)*t - s) + b; }, easeOutBack: function (x, t, b, c, d, s){ if(s==undefined) s=1.70158; return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b; }, easeInOutBack: function (x, t, b, c, d, s){ if(s==undefined) s=1.70158; if((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b; return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b; }, easeInBounce: function (x, t, b, c, d){ return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b; }, easeOutBounce: function (x, t, b, c, d){ if((t/=d) < (1/2.75)){ return c*(7.5625*t*t) + b; }else if(t < (2/2.75)){ return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b; }else if(t < (2.5/2.75)){ return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b; }else{ return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b; }}, easeInOutBounce: function (x, t, b, c, d){ if(t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b; return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b; }}); !function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a:a(jQuery)}(function(a){function b(b){var g=b||window.event,h=i.call(arguments,1),j=0,l=0,m=0,n=0,o=0,p=0;if(b=a.event.fix(g),b.type="mousewheel","detail"in g&&(m=-1*g.detail),"wheelDelta"in g&&(m=g.wheelDelta),"wheelDeltaY"in g&&(m=g.wheelDeltaY),"wheelDeltaX"in g&&(l=-1*g.wheelDeltaX),"axis"in g&&g.axis===g.HORIZONTAL_AXIS&&(l=-1*m,m=0),j=0===m?l:m,"deltaY"in g&&(m=-1*g.deltaY,j=m),"deltaX"in g&&(l=g.deltaX,0===m&&(j=-1*l)),0!==m||0!==l){if(1===g.deltaMode){var q=a.data(this,"mousewheel-line-height");j*=q,m*=q,l*=q}else if(2===g.deltaMode){var r=a.data(this,"mousewheel-page-height");j*=r,m*=r,l*=r}if(n=Math.max(Math.abs(m),Math.abs(l)),(!f||f>n)&&(f=n,d(g,n)&&(f/=40)),d(g,n)&&(j/=40,l/=40,m/=40),j=Math[j>=1?"floor":"ceil"](j/f),l=Math[l>=1?"floor":"ceil"](l/f),m=Math[m>=1?"floor":"ceil"](m/f),k.settings.normalizeOffset&&this.getBoundingClientRect){var s=this.getBoundingClientRect();o=b.clientX-s.left,p=b.clientY-s.top}return b.deltaX=l,b.deltaY=m,b.deltaFactor=f,b.offsetX=o,b.offsetY=p,b.deltaMode=0,h.unshift(b,j,l,m),e&&clearTimeout(e),e=setTimeout(c,200),(a.event.dispatch||a.event.handle).apply(this,h)}}function c(){f=null}function d(a,b){return k.settings.adjustOldDeltas&&"mousewheel"===a.type&&b%120===0}var e,f,g=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],h="onwheel"in document||document.documentMode>=9?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],i=Array.prototype.slice;if(a.event.fixHooks)for(var j=g.length;j;)a.event.fixHooks[g[--j]]=a.event.mouseHooks;var k=a.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var c=h.length;c;)this.addEventListener(h[--c],b,!1);else this.onmousewheel=b;a.data(this,"mousewheel-line-height",k.getLineHeight(this)),a.data(this,"mousewheel-page-height",k.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var c=h.length;c;)this.removeEventListener(h[--c],b,!1);else this.onmousewheel=null;a.removeData(this,"mousewheel-line-height"),a.removeData(this,"mousewheel-page-height")},getLineHeight:function(b){var c=a(b),d=c["offsetParent"in a.fn?"offsetParent":"parent"]();return d.length||(d=a("body")),parseInt(d.css("fontSize"),10)||parseInt(c.css("fontSize"),10)||16},getPageHeight:function(b){return a(b).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};a.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})}); var headerEl=document.getElementById('header-outer'); var headerSpaceEl=document.getElementById('header-space'); if(typeof(headerEl)!='undefined'&&headerEl!=null && typeof(headerSpaceEl)!='undefined'&&headerSpaceEl!=null && headerSpaceEl.hasAttribute('data-secondary-header-display')){ headerSpaceEl.style.height=headerEl.clientHeight + 'px'; } jQuery(function($){ "use strict"; var using_mobile_browser=false; if(navigator.userAgent.match(/(Android|iPod|iPhone|iPad|BlackBerry|IEMobile|Opera Mini)/)){ using_mobile_browser=true; } var nectarPageHeader; function fullscreenHeightCalc(){ var pageHeaderOffset=nectarPageHeader.offset().top; nectarPageHeader.css('height',(parseInt(window.innerHeight) - parseInt(pageHeaderOffset)) +'px'); } if(using_mobile_browser&&$('#page-header-bg.fullscreen-header').length > 0){ nectarPageHeader=$('#page-header-bg'); fullscreenHeightCalc(); var $windowDOMWidth=window.innerWidth, $windowDOMHeight=window.innerHeight; $(window).resize(function(){ if(($(window).width()!=$windowDOMWidth&&$(window).height!=$windowDOMHeight)){ fullscreenHeightCalc(); $windowDOMWidth=window.innerWidth; $windowDOMHeight=window.innerHeight; }}); } function portfolioFullScreenSliderCalcs(){ var $bodyBorderSize=($('.body-border-top').length > 0&&$(window).width() > 1000) ? $('.body-border-top').height(): 0; $('.nectar_fullscreen_zoom_recent_projects').each(function(){ if($(this).parents('.first-section').length > 0){ $(this).css('height',$(window).height() - $(this).offset().top - $bodyBorderSize); }else{ $(this).css('height',$(window).height()); }}); } if(using_mobile_browser&&$('.nectar_fullscreen_zoom_recent_projects').length > 0){ portfolioFullScreenSliderCalcs(); } function centeredNavBottomBarReposition(){ var $headerSpan9=$('#header-outer[data-format="centered-menu-bottom-bar"] header#top .span_9'); var $headerSpan3=$('#header-outer[data-format="centered-menu-bottom-bar"] header#top .span_3'); var $secondaryHeader=$('#header-secondary-outer'); var $logoLinkClone=$headerSpan3.find('#logo').clone(); if($logoLinkClone.is('[data-supplied-ml="true"]')){ $logoLinkClone.find('img:not(.mobile-only-logo)').remove(); } $logoLinkClone.find('img.starting-logo').remove(); if($secondaryHeader.length > 0){ $secondaryHeader.addClass('centered-menu-bottom-bar'); } if($('#header-outer[data-condense="true"]').length > 0){ $headerSpan9.prepend($logoLinkClone); }} if($('#header-outer[data-format="centered-menu-bottom-bar"]').length > 0){ centeredNavBottomBarReposition(); } $('#page-header-bg[data-animate-in-effect="zoom-out"]').addClass('loaded'); function sliderFontOverrides(){ var $overrideCSS=''; $('.nectar-slider-wrap').each(function(){ if($(this).find('.swiper-container[data-tho]').length > 0){ var $tho=$(this).find('.swiper-container').attr('data-tho'); var $tco=$(this).find('.swiper-container').attr('data-tco'); var $pho=$(this).find('.swiper-container').attr('data-pho'); var $pco=$(this).find('.swiper-container').attr('data-pco'); if($tho!='auto'||$tco!='auto'){ $overrideCSS +='@media only screen and (max-width: 1000px) and (min-width: 690px){'; if($tho!='auto') $overrideCSS +='#'+$(this).attr('id')+ '.nectar-slider-wrap[data-full-width="false"] .swiper-slide .content h2, #boxed .nectar-slider-wrap#'+$(this).attr('id')+ ' .swiper-slide .content h2, body .nectar-slider-wrap#'+$(this).attr('id')+ '[data-full-width="true"] .swiper-slide .content h2, body .nectar-slider-wrap#'+$(this).attr('id')+ '[data-full-width="boxed-full-width"] .swiper-slide .content h2, body .full-width-content .vc_span12 .nectar-slider-wrap#'+$(this).attr('id')+ ' .swiper-slide .content h2 { font-size:' + $tho + 'px!important; line-height:' + (parseInt($tho) + 10) + 'px!important; }'; if($pho!='auto') $overrideCSS +='#'+$(this).attr('id')+ '.nectar-slider-wrap[data-full-width="false"] .swiper-slide .content p, #boxed .nectar-slider-wrap#'+$(this).attr('id')+ ' .swiper-slide .content p, body .nectar-slider-wrap#'+$(this).attr('id')+ '[data-full-width="true"] .swiper-slide .content p, body .nectar-slider-wrap#'+$(this).attr('id')+ '[data-full-width="boxed-full-width"] .swiper-slide .content p, body .full-width-content .vc_span12 .nectar-slider-wrap#'+$(this).attr('id')+ ' .swiper-slide .content p { font-size:' + $tco + 'px!important; line-height:' + (parseInt($tco) + 10) + 'px!important; }'; $overrideCSS +='}'; } if($pho!='auto'||$pco!='auto'){ $overrideCSS +='@media only screen and (max-width: 690px){'; if($pho!='auto') $overrideCSS +='#'+$(this).attr('id')+ '.nectar-slider-wrap[data-full-width="false"] .swiper-slide .content h2, #boxed .nectar-slider-wrap#'+$(this).attr('id')+ ' .swiper-slide .content h2, body .nectar-slider-wrap#'+$(this).attr('id')+ '[data-full-width="true"] .swiper-slide .content h2, body .nectar-slider-wrap#'+$(this).attr('id')+ '[data-full-width="boxed-full-width"] .swiper-slide .content h2, body .full-width-content .vc_span12 .nectar-slider-wrap#'+$(this).attr('id')+ ' .swiper-slide .content h2 { font-size:' + $pho + 'px!important; line-height:' + (parseInt($pho) + 10) + 'px!important; }'; if($pho!='auto') $overrideCSS +='#'+$(this).attr('id')+ '.nectar-slider-wrap[data-full-width="false"] .swiper-slide .content p, #boxed .nectar-slider-wrap#'+$(this).attr('id')+ ' .swiper-slide .content p, body .nectar-slider-wrap#'+$(this).attr('id')+ '[data-full-width="true"] .swiper-slide .content p, body .nectar-slider-wrap#'+$(this).attr('id')+ '[data-full-width="boxed-full-width"] .swiper-slide .content p, body .full-width-content .vc_span12 .nectar-slider-wrap#'+$(this).attr('id')+ ' .swiper-slide .content p { font-size:' + $pco + 'px!important; line-height:' + (parseInt($pco) + 10) + 'px!important; }'; $overrideCSS +='}'; }} }); if($overrideCSS.length > 1){ var head=document.head||document.getElementsByTagName('head')[0]; var style=document.createElement('style'); style.type='text/css'; if(style.styleSheet){ style.styleSheet.cssText=$overrideCSS; }else{ style.appendChild(document.createTextNode($overrideCSS)); } head.appendChild(style); $('.nectar-slider-wrap .content').css('visibility','visible'); }} sliderFontOverrides(); }); (function(k){k.transit={version:"0.9.9",propertyMap:{marginLeft:"margin",marginRight:"margin",marginBottom:"margin",marginTop:"margin",paddingLeft:"padding",paddingRight:"padding",paddingBottom:"padding",paddingTop:"padding"},enabled:true,useTransitionEnd:false};var d=document.createElement("div");var q={};function b(v){if(v in d.style){return v}var u=["Moz","Webkit","O","ms"];var r=v.charAt(0).toUpperCase()+v.substr(1);if(v in d.style){return v}for(var t=0;t-1;q.transition=b("transition");q.transitionDelay=b("transitionDelay");q.transform=b("transform");q.transformOrigin=b("transformOrigin");q.transform3d=e();var i={transition:"transitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",WebkitTransition:"webkitTransitionEnd",msTransition:"MSTransitionEnd"};var f=q.transitionEnd=i[q.transition]||null;for(var p in q){if(q.hasOwnProperty(p)&&typeof k.support[p]==="undefined"){k.support[p]=q[p]}}d=null;k.cssEase={_default:"ease","in":"ease-in",out:"ease-out","in-out":"ease-in-out",snap:"cubic-bezier(0,1,.5,1)",easeOutCubic:"cubic-bezier(.215,.61,.355,1)",easeInOutCubic:"cubic-bezier(.645,.045,.355,1)",easeInCirc:"cubic-bezier(.6,.04,.98,.335)",easeOutCirc:"cubic-bezier(.075,.82,.165,1)",easeInOutCirc:"cubic-bezier(.785,.135,.15,.86)",easeInExpo:"cubic-bezier(.95,.05,.795,.035)",easeOutExpo:"cubic-bezier(.19,1,.22,1)",easeInOutExpo:"cubic-bezier(1,0,0,1)",easeInQuad:"cubic-bezier(.55,.085,.68,.53)",easeOutQuad:"cubic-bezier(.25,.46,.45,.94)",easeInOutQuad:"cubic-bezier(.455,.03,.515,.955)",easeInQuart:"cubic-bezier(.895,.03,.685,.22)",easeOutQuart:"cubic-bezier(.165,.84,.44,1)",easeInOutQuart:"cubic-bezier(.77,0,.175,1)",easeInQuint:"cubic-bezier(.755,.05,.855,.06)",easeOutQuint:"cubic-bezier(.23,1,.32,1)",easeInOutQuint:"cubic-bezier(.86,0,.07,1)",easeInSine:"cubic-bezier(.47,0,.745,.715)",easeOutSine:"cubic-bezier(.39,.575,.565,1)",easeInOutSine:"cubic-bezier(.445,.05,.55,.95)",easeInBack:"cubic-bezier(.6,-.28,.735,.045)",easeOutBack:"cubic-bezier(.175, .885,.32,1.275)",easeInOutBack:"cubic-bezier(.68,-.55,.265,1.55)"};k.cssHooks["transit:transform"]={get:function(r){return k(r).data("transform")||new j()},set:function(s,r){var t=r;if(!(t instanceof j)){t=new j(t)}if(q.transform==="WebkitTransform"&&!a){s.style[q.transform]=t.toString(true)}else{s.style[q.transform]=t.toString()}k(s).data("transform",t)}};k.cssHooks.transform={set:k.cssHooks["transit:transform"].set};if(k.fn.jquery<"1.8"){k.cssHooks.transformOrigin={get:function(r){return r.style[q.transformOrigin]},set:function(r,s){r.style[q.transformOrigin]=s}};k.cssHooks.transition={get:function(r){return r.style[q.transition]},set:function(r,s){r.style[q.transition]=s}}}n("scale");n("translate");n("rotate");n("rotateX");n("rotateY");n("rotate3d");n("perspective");n("skewX");n("skewY");n("x",true);n("y",true);function j(r){if(typeof r==="string"){this.parse(r)}return this}j.prototype={setFromString:function(t,s){var r=(typeof s==="string")?s.split(","):(s.constructor===Array)?s:[s];r.unshift(t);j.prototype.set.apply(this,r)},set:function(s){var r=Array.prototype.slice.apply(arguments,[1]);if(this.setter[s]){this.setter[s].apply(this,r)}else{this[s]=r.join(",")}},get:function(r){if(this.getter[r]){return this.getter[r].apply(this)}else{return this[r]||0}},setter:{rotate:function(r){this.rotate=o(r,"deg")},rotateX:function(r){this.rotateX=o(r,"deg")},rotateY:function(r){this.rotateY=o(r,"deg")},scale:function(r,s){if(s===undefined){s=r}this.scale=r+","+s},skewX:function(r){this.skewX=o(r,"deg")},skewY:function(r){this.skewY=o(r,"deg")},perspective:function(r){this.perspective=o(r,"px")},x:function(r){this.set("translate",r,null)},y:function(r){this.set("translate",null,r)},translate:function(r,s){if(this._translateX===undefined){this._translateX=0}if(this._translateY===undefined){this._translateY=0}if(r!==null&&r!==undefined){this._translateX=o(r,"px")}if(s!==null&&s!==undefined){this._translateY=o(s,"px")}this.translate=this._translateX+","+this._translateY}},getter:{x:function(){return this._translateX||0},y:function(){return this._translateY||0},scale:function(){var r=(this.scale||"1,1").split(",");if(r[0]){r[0]=parseFloat(r[0])}if(r[1]){r[1]=parseFloat(r[1])}return(r[0]===r[1])?r[0]:r},rotate3d:function(){var t=(this.rotate3d||"0,0,0,0deg").split(",");for(var r=0;r<=3;++r){if(t[r]){t[r]=parseFloat(t[r])}}if(t[3]){t[3]=o(t[3],"deg")}return t}},parse:function(s){var r=this;s.replace(/([a-zA-Z0-9]+)\((.*?)\)/g,function(t,v,u){r.setFromString(v,u)})},toString:function(t){var s=[];for(var r in this){if(this.hasOwnProperty(r)){if((!q.transform3d)&&((r==="rotateX")||(r==="rotateY")||(r==="perspective")||(r==="transformOrigin"))){continue}if(r[0]!=="_"){if(t&&(r==="scale")){s.push(r+"3d("+this[r]+",1)")}else{if(t&&(r==="translate")){s.push(r+"3d("+this[r]+",0)")}else{s.push(r+"("+this[r]+")")}}}}}return s.join(" ")}};function m(s,r,t){if(r===true){s.queue(t)}else{if(r){s.queue(r,t)}else{t()}}}function h(s){var r=[];k.each(s,function(t){t=k.camelCase(t);t=k.transit.propertyMap[t]||k.cssProps[t]||t;t=c(t);if(k.inArray(t,r)===-1){r.push(t)}});return r}function g(s,v,x,r){var t=h(s);if(k.cssEase[x]){x=k.cssEase[x]}var w=""+l(v)+" "+x;if(parseInt(r,10)>0){w+=" "+l(r)}var u=[];k.each(t,function(z,y){u.push(y+" "+w)});return u.join(", ")}k.fn.transition=k.fn.transit=function(z,s,y,C){var D=this;var u=0;var w=true;if(typeof s==="function"){C=s;s=undefined}if(typeof y==="function"){C=y;y=undefined}if(typeof z.easing!=="undefined"){y=z.easing;delete z.easing}if(typeof z.duration!=="undefined"){s=z.duration;delete z.duration}if(typeof z.complete!=="undefined"){C=z.complete;delete z.complete}if(typeof z.queue!=="undefined"){w=z.queue;delete z.queue}if(typeof z.delay!=="undefined"){u=z.delay;delete z.delay}if(typeof s==="undefined"){s=k.fx.speeds._default}if(typeof y==="undefined"){y=k.cssEase._default}s=l(s);var E=g(z,s,y,u);var B=k.transit.enabled&&q.transition;var t=B?(parseInt(s,10)+parseInt(u,10)):0;if(t===0){var A=function(F){D.css(z);if(C){C.apply(D)}if(F){F()}};m(D,w,A);return D}var x={};var r=function(H){var G=false;var F=function(){if(G){D.unbind(f,F)}if(t>0){D.each(function(){this.style[q.transition]=(x[this]||null)})}if(typeof C==="function"){C.apply(D)}if(typeof H==="function"){H()}};if((t>0)&&(f)&&(k.transit.useTransitionEnd)){G=true;D.bind(f,F)}else{window.setTimeout(F,t)}D.each(function(){if(t>0){this.style[q.transition]=E}k(this).css(z)})};var v=function(F){this.offsetWidth;r(F)};m(D,w,v);return this};function n(s,r){if(!r){k.cssNumber[s]=true}k.transit.propertyMap[s]=q.transform;k.cssHooks[s]={get:function(v){var u=k(v).css("transit:transform");return u.get(s)},set:function(v,w){var u=k(v).css("transit:transform");u.setFromString(s,w);k(v).css({"transit:transform":u})}}}function c(r){return r.replace(/([A-Z])/g,function(s){return"-"+s.toLowerCase()})}function o(s,r){if((typeof s==="string")&&(!s.match(/^[\-0-9\.]+$/))){return s}else{return""+s+r}}function l(s){var r=s;if(k.fx.speeds[r]){r=k.fx.speeds[r]}return o(r,"ms")}k.transit.getTransitionValue=g})(jQuery); (function(){ 'use strict' var keyCounter=0 var allWaypoints={} function Waypoint(options){ if(!options){ throw new Error('No options passed to Waypoint constructor') } if(!options.element){ throw new Error('No element option passed to Waypoint constructor') } if(!options.handler){ throw new Error('No handler option passed to Waypoint constructor') } this.key='waypoint-' + keyCounter this.options=Waypoint.Adapter.extend({}, Waypoint.defaults, options) this.element=this.options.element this.adapter=new Waypoint.Adapter(this.element) this.callback=options.handler this.axis=this.options.horizontal ? 'horizontal':'vertical' this.enabled=this.options.enabled this.triggerPoint=null this.group=Waypoint.Group.findOrCreate({ name: this.options.group, axis: this.axis }) this.context=Waypoint.Context.findOrCreateByElement(this.options.context) if(Waypoint.offsetAliases[this.options.offset]){ this.options.offset=Waypoint.offsetAliases[this.options.offset] } this.group.add(this) this.context.add(this) allWaypoints[this.key]=this keyCounter +=1 } Waypoint.prototype.queueTrigger=function(direction){ this.group.queueTrigger(this, direction) } Waypoint.prototype.trigger=function(args){ if(!this.enabled){ return } if(this.callback){ this.callback.apply(this, args) }} Waypoint.prototype.destroy=function(){ this.context.remove(this) this.group.remove(this) delete allWaypoints[this.key] } Waypoint.prototype.disable=function(){ this.enabled=false return this } Waypoint.prototype.enable=function(){ this.context.refresh() this.enabled=true return this } Waypoint.prototype.next=function(){ return this.group.next(this) } Waypoint.prototype.previous=function(){ return this.group.previous(this) } Waypoint.invokeAll=function(method){ var allWaypointsArray=[] for (var waypointKey in allWaypoints){ allWaypointsArray.push(allWaypoints[waypointKey]) } for (var i=0, end=allWaypointsArray.length; i < end; i++){ allWaypointsArray[i][method]() }} Waypoint.destroyAll=function(){ Waypoint.invokeAll('destroy') } Waypoint.disableAll=function(){ Waypoint.invokeAll('disable') } Waypoint.enableAll=function(){ Waypoint.Context.refreshAll() for (var waypointKey in allWaypoints){ allWaypoints[waypointKey].enabled=true } return this } Waypoint.refreshAll=function(){ Waypoint.Context.refreshAll() } Waypoint.viewportHeight=function(){ return window.innerHeight||document.documentElement.clientHeight } Waypoint.viewportWidth=function(){ return document.documentElement.clientWidth } Waypoint.adapters=[] Waypoint.defaults={ context: window, continuous: true, enabled: true, group: 'default', horizontal: false, offset: 0 } Waypoint.offsetAliases={ 'bottom-in-view': function(){ return this.context.innerHeight() - this.adapter.outerHeight() }, 'right-in-view': function(){ return this.context.innerWidth() - this.adapter.outerWidth() }} window.Waypoint=Waypoint }()) ;(function(){ 'use strict' function requestAnimationFrameShim(callback){ window.setTimeout(callback, 1000 / 60) } var keyCounter=0 var contexts={} var Waypoint=window.Waypoint var oldWindowLoad=window.onload function Context(element){ this.element=element this.Adapter=Waypoint.Adapter this.adapter=new this.Adapter(element) this.key='waypoint-context-' + keyCounter this.didScroll=false this.didResize=false this.oldScroll={ x: this.adapter.scrollLeft(), y: this.adapter.scrollTop() } this.waypoints={ vertical: {}, horizontal: {}} element.waypointContextKey=this.key contexts[element.waypointContextKey]=this keyCounter +=1 if(!Waypoint.windowContext){ Waypoint.windowContext=true Waypoint.windowContext=new Context(window) } this.createThrottledScrollHandler() this.createThrottledResizeHandler() } Context.prototype.add=function(waypoint){ var axis=waypoint.options.horizontal ? 'horizontal':'vertical' this.waypoints[axis][waypoint.key]=waypoint this.refresh() } Context.prototype.checkEmpty=function(){ var horizontalEmpty=this.Adapter.isEmptyObject(this.waypoints.horizontal) var verticalEmpty=this.Adapter.isEmptyObject(this.waypoints.vertical) var isWindow=this.element==this.element.window if(horizontalEmpty&&verticalEmpty&&!isWindow){ this.adapter.off('.waypoints') delete contexts[this.key] }} Context.prototype.createThrottledResizeHandler=function(){ var self=this function resizeHandler(){ self.handleResize() self.didResize=false } this.adapter.on('resize.waypoints', function(){ if(!self.didResize){ self.didResize=true Waypoint.requestAnimationFrame(resizeHandler) }}) } Context.prototype.createThrottledScrollHandler=function(){ var self=this function scrollHandler(){ self.handleScroll() self.didScroll=false } this.adapter.on('scroll.waypoints', function(){ if(!self.didScroll||Waypoint.isTouch){ self.didScroll=true Waypoint.requestAnimationFrame(scrollHandler) }}) } Context.prototype.handleResize=function(){ Waypoint.Context.refreshAll() } Context.prototype.handleScroll=function(){ var triggeredGroups={} var axes={ horizontal: { newScroll: 0, oldScroll: 0, forward: 'right', backward: 'left' }, vertical: { newScroll: this.adapter.scrollTop(), oldScroll: this.oldScroll.y, forward: 'down', backward: 'up' }} for (var axisKey in axes){ var axis=axes[axisKey] var isForward=axis.newScroll > axis.oldScroll var direction=isForward ? axis.forward:axis.backward for (var waypointKey in this.waypoints[axisKey]){ var waypoint=this.waypoints[axisKey][waypointKey] if(waypoint.triggerPoint===null){ continue } var wasBeforeTriggerPoint=axis.oldScroll < waypoint.triggerPoint var nowAfterTriggerPoint=axis.newScroll >=waypoint.triggerPoint var crossedForward=wasBeforeTriggerPoint&&nowAfterTriggerPoint var crossedBackward = !wasBeforeTriggerPoint&&!nowAfterTriggerPoint if(crossedForward||crossedBackward){ waypoint.queueTrigger(direction) triggeredGroups[waypoint.group.id]=waypoint.group }} } for (var groupKey in triggeredGroups){ triggeredGroups[groupKey].flushTriggers() } this.oldScroll={ x: axes.horizontal.newScroll, y: axes.vertical.newScroll }} Context.prototype.innerHeight=function(){ if(this.element==this.element.window){ return Waypoint.viewportHeight() } return this.adapter.innerHeight() } Context.prototype.remove=function(waypoint){ delete this.waypoints[waypoint.axis][waypoint.key] this.checkEmpty() } Context.prototype.innerWidth=function(){ if(this.element==this.element.window){ return Waypoint.viewportWidth() } return this.adapter.innerWidth() } Context.prototype.destroy=function(){ var allWaypoints=[] for (var axis in this.waypoints){ for (var waypointKey in this.waypoints[axis]){ allWaypoints.push(this.waypoints[axis][waypointKey]) }} for (var i=0, end=allWaypoints.length; i < end; i++){ allWaypoints[i].destroy() }} Context.prototype.refresh=function(){ var isWindow=this.element==this.element.window var contextOffset=isWindow ? undefined:this.adapter.offset() var triggeredGroups={} var axes this.handleScroll() axes={ horizontal: { contextOffset: isWindow ? 0:contextOffset.left, contextScroll: isWindow ? 0:this.oldScroll.x, contextDimension: this.innerWidth(), oldScroll: this.oldScroll.x, forward: 'right', backward: 'left', offsetProp: 'left' }, vertical: { contextOffset: isWindow ? 0:contextOffset.top, contextScroll: isWindow ? 0:this.oldScroll.y, contextDimension: this.innerHeight(), oldScroll: this.oldScroll.y, forward: 'down', backward: 'up', offsetProp: 'top' }} for (var axisKey in axes){ var axis=axes[axisKey] for (var waypointKey in this.waypoints[axisKey]){ var waypoint=this.waypoints[axisKey][waypointKey] var adjustment=waypoint.options.offset var oldTriggerPoint=waypoint.triggerPoint var elementOffset=0 var freshWaypoint=oldTriggerPoint==null var contextModifier, wasBeforeScroll, nowAfterScroll var triggeredBackward, triggeredForward if(waypoint.element!==waypoint.element.window){ elementOffset=waypoint.adapter.offset()[axis.offsetProp] } if(typeof adjustment==='function'){ adjustment=adjustment.apply(waypoint) } else if(typeof adjustment==='string'){ adjustment=parseFloat(adjustment) if(waypoint.options.offset.indexOf('%') > - 1){ adjustment=Math.ceil(axis.contextDimension * adjustment / 100) }} contextModifier=axis.contextScroll - axis.contextOffset waypoint.triggerPoint=Math.floor(elementOffset + contextModifier - adjustment) wasBeforeScroll=oldTriggerPoint < axis.oldScroll nowAfterScroll=waypoint.triggerPoint >=axis.oldScroll triggeredBackward=wasBeforeScroll&&nowAfterScroll triggeredForward = !wasBeforeScroll&&!nowAfterScroll if(!freshWaypoint&&triggeredBackward){ waypoint.queueTrigger(axis.backward) triggeredGroups[waypoint.group.id]=waypoint.group } else if(!freshWaypoint&&triggeredForward){ waypoint.queueTrigger(axis.forward) triggeredGroups[waypoint.group.id]=waypoint.group } else if(freshWaypoint&&axis.oldScroll >=waypoint.triggerPoint){ waypoint.queueTrigger(axis.forward) triggeredGroups[waypoint.group.id]=waypoint.group }} } Waypoint.requestAnimationFrame(function(){ for (var groupKey in triggeredGroups){ triggeredGroups[groupKey].flushTriggers() }}) return this } Context.findOrCreateByElement=function(element){ return Context.findByElement(element)||new Context(element) } Context.refreshAll=function(){ for (var contextId in contexts){ contexts[contextId].refresh() }} Context.findByElement=function(element){ return contexts[element.waypointContextKey] } window.onload=function(){ if(oldWindowLoad){ oldWindowLoad() } Context.refreshAll() } Waypoint.requestAnimationFrame=function(callback){ var requestFn=window.requestAnimationFrame || window.mozRequestAnimationFrame || window.webkitRequestAnimationFrame || requestAnimationFrameShim requestFn.call(window, callback) } Waypoint.Context=Context }()) ;(function(){ 'use strict' function byTriggerPoint(a, b){ return a.triggerPoint - b.triggerPoint } function byReverseTriggerPoint(a, b){ return b.triggerPoint - a.triggerPoint } var groups={ vertical: {}, horizontal: {}} var Waypoint=window.Waypoint function Group(options){ this.name=options.name this.axis=options.axis this.id=this.name + '-' + this.axis this.waypoints=[] this.clearTriggerQueues() groups[this.axis][this.name]=this } Group.prototype.add=function(waypoint){ this.waypoints.push(waypoint) } Group.prototype.clearTriggerQueues=function(){ this.triggerQueues={ up: [], down: [], left: [], right: [] }} Group.prototype.flushTriggers=function(){ for (var direction in this.triggerQueues){ var waypoints=this.triggerQueues[direction] var reverse=direction==='up'||direction==='left' waypoints.sort(reverse ? byReverseTriggerPoint:byTriggerPoint) for (var i=0, end=waypoints.length; i < end; i +=1){ var waypoint=waypoints[i] if(waypoint.options.continuous||i===waypoints.length - 1){ waypoint.trigger([direction]) }} } this.clearTriggerQueues() } Group.prototype.next=function(waypoint){ this.waypoints.sort(byTriggerPoint) var index=Waypoint.Adapter.inArray(waypoint, this.waypoints) var isLast=index===this.waypoints.length - 1 return isLast ? null:this.waypoints[index + 1] } Group.prototype.previous=function(waypoint){ this.waypoints.sort(byTriggerPoint) var index=Waypoint.Adapter.inArray(waypoint, this.waypoints) return index ? this.waypoints[index - 1]:null } Group.prototype.queueTrigger=function(waypoint, direction){ this.triggerQueues[direction].push(waypoint) } Group.prototype.remove=function(waypoint){ var index=Waypoint.Adapter.inArray(waypoint, this.waypoints) if(index > -1){ this.waypoints.splice(index, 1) }} Group.prototype.first=function(){ return this.waypoints[0] } Group.prototype.last=function(){ return this.waypoints[this.waypoints.length - 1] } Group.findOrCreate=function(options){ return groups[options.axis][options.name]||new Group(options) } Waypoint.Group=Group }()) ;(function(){ 'use strict' var $=window.jQuery var Waypoint=window.Waypoint function JQueryAdapter(element){ this.$element=$(element) } $.each([ 'innerHeight', 'innerWidth', 'off', 'offset', 'on', 'outerHeight', 'outerWidth', 'scrollLeft', 'scrollTop' ], function(i, method){ JQueryAdapter.prototype[method]=function(){ var args=Array.prototype.slice.call(arguments) return this.$element[method].apply(this.$element, args) }}) $.each([ 'extend', 'inArray', 'isEmptyObject' ], function(i, method){ JQueryAdapter[method]=$[method] }) Waypoint.adapters.push({ name: 'jquery', Adapter: JQueryAdapter }) Waypoint.Adapter=JQueryAdapter }()) ;(function(){ 'use strict' var Waypoint=window.Waypoint function createExtension(framework){ return function(){ var waypoints=[] var overrides=arguments[0] if(framework.isFunction(arguments[0])){ overrides=framework.extend({}, arguments[1]) overrides.handler=arguments[0] } this.each(function(){ var options=framework.extend({}, overrides, { element: this }) if(typeof options.context==='string'){ options.context=framework(this).closest(options.context)[0] } waypoints.push(new Waypoint(options)) }) return waypoints }} if(window.jQuery){ window.jQuery.fn.waypoint=createExtension(window.jQuery) } if(window.Zepto){ window.Zepto.fn.waypoint=createExtension(window.Zepto) }}()) ; !function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return n.indexOf(t)==-1&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return n!=-1&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){i=i.slice(0),t=t||[];for(var n=this._onceEvents&&this._onceEvents[e],o=0;o',preload:!0,css:{},attr:{scrolling:"auto"}},video:{tpl:'',format:"",autoStart:!0},defaultType:"image",animationEffect:"zoom",animationDuration:366,zoomOpacity:"auto",transitionEffect:"fade",transitionDuration:366,slideClass:"",baseClass:"",baseTpl:'',spinnerTpl:'
    ',errorTpl:'

    {{ERROR}}

    ',btnTpl:{download:'',zoom:'',close:'',arrowLeft:'',arrowRight:'',smallBtn:''},parentEl:"body",hideScrollbar:!0,autoFocus:!0,backFocus:!0,trapFocus:!0,fullScreen:{autoStart:!1},touch:{vertical:!0,momentum:!0},hash:null,media:{},slideShow:{autoStart:!1,speed:3e3},thumbs:{autoStart:!1,hideOnClose:!0,parentEl:".fancybox-container",axis:"y"},wheel:"auto",onInit:n.noop,beforeLoad:n.noop,afterLoad:n.noop,beforeShow:n.noop,afterShow:n.noop,beforeClose:n.noop,afterClose:n.noop,onActivate:n.noop,onDeactivate:n.noop,clickContent:function(t,e){return"image"===t.type&&"zoom"},clickSlide:"close",clickOutside:"close",dblclickContent:!1,dblclickSlide:!1,dblclickOutside:!1,mobile:{preventCaptionOverlap:!1,idleTime:!1,clickContent:function(t,e){return"image"===t.type&&"toggleControls"},clickSlide:function(t,e){return"image"===t.type?"toggleControls":"close"},dblclickContent:function(t,e){return"image"===t.type&&"zoom"},dblclickSlide:function(t,e){return"image"===t.type&&"zoom"}},lang:"en",i18n:{en:{CLOSE:"Close",NEXT:"Next",PREV:"Previous",ERROR:"The requested content cannot be loaded.
    Please try again later.",PLAY_START:"Start slideshow",PLAY_STOP:"Pause slideshow",FULL_SCREEN:"Full screen",THUMBS:"Thumbnails",DOWNLOAD:"Download",SHARE:"Share",ZOOM:"Zoom"},de:{CLOSE:"Schließen",NEXT:"Weiter",PREV:"Zurück",ERROR:"Die angeforderten Daten konnten nicht geladen werden.
    Bitte versuchen Sie es später nochmal.",PLAY_START:"Diaschau starten",PLAY_STOP:"Diaschau beenden",FULL_SCREEN:"Vollbild",THUMBS:"Vorschaubilder",DOWNLOAD:"Herunterladen",SHARE:"Teilen",ZOOM:"Vergrößern"}}},s=n(t),r=n(e),c=0,l=function(t){return t&&t.hasOwnProperty&&t instanceof n},d=function(){return t.requestAnimationFrame||t.webkitRequestAnimationFrame||t.mozRequestAnimationFrame||t.oRequestAnimationFrame||function(e){return t.setTimeout(e,1e3/60)}}(),u=function(){return t.cancelAnimationFrame||t.webkitCancelAnimationFrame||t.mozCancelAnimationFrame||t.oCancelAnimationFrame||function(e){t.clearTimeout(e)}}(),f=function(){var t,n=e.createElement("fakeelement"),o={transition:"transitionend",OTransition:"oTransitionEnd",MozTransition:"transitionend",WebkitTransition:"webkitTransitionEnd"};for(t in o)if(void 0!==n.style[t])return o[t];return"transitionend"}(),p=function(t){return t&&t.length&&t[0].offsetHeight},h=function(t,e){var o=n.extend(!0,{},t,e);return n.each(e,function(t,e){n.isArray(e)&&(o[t]=e)}),o},g=function(t){var o,i;return!(!t||t.ownerDocument!==e)&&(n(".fancybox-container").css("pointer-events","none"),o={x:t.getBoundingClientRect().left+t.offsetWidth/2,y:t.getBoundingClientRect().top+t.offsetHeight/2},i=e.elementFromPoint(o.x,o.y)===t,n(".fancybox-container").css("pointer-events",""),i)},b=function(t,e,o){var i=this;i.opts=h({index:o},n.fancybox.defaults),n.isPlainObject(e)&&(i.opts=h(i.opts,e)),n.fancybox.isMobile&&(i.opts=h(i.opts,i.opts.mobile)),i.id=i.opts.id||++c,i.currIndex=parseInt(i.opts.index,10)||0,i.prevIndex=null,i.prevPos=null,i.currPos=0,i.firstRun=!0,i.group=[],i.slides={},i.addContent(t),i.group.length&&i.init()};n.extend(b.prototype,{init:function(){var o,i,a=this,s=a.group[a.currIndex],r=s.opts;r.closeExisting&&n.fancybox.close(!0),n("body").addClass("fancybox-active"),!n.fancybox.getInstance()&&!1!==r.hideScrollbar&&!n.fancybox.isMobile&&e.body.scrollHeight>t.innerHeight&&(n("head").append('"),n("body").addClass("compensate-for-scrollbar")),i="",n.each(r.buttons,function(t,e){i+=r.btnTpl[e]||""}),o=n(a.translate(a,r.baseTpl.replace("{{buttons}}",i).replace("{{arrows}}",r.btnTpl.arrowLeft+r.btnTpl.arrowRight))).attr("id","fancybox-container-"+a.id).addClass(r.baseClass).data("FancyBox",a).appendTo(r.parentEl),a.$refs={container:o},["bg","inner","infobar","toolbar","stage","caption","navigation"].forEach(function(t){a.$refs[t]=o.find(".fancybox-"+t)}),a.trigger("onInit"),a.activate(),a.jumpTo(a.currIndex)},translate:function(t,e){var n=t.opts.i18n[t.opts.lang]||t.opts.i18n.en;return e.replace(/\{\{(\w+)\}\}/g,function(t,e){return void 0===n[e]?t:n[e]})},addContent:function(t){var e,o=this,i=n.makeArray(t);n.each(i,function(t,e){var i,a,s,r,c,l={},d={};n.isPlainObject(e)?(l=e,d=e.opts||e):"object"===n.type(e)&&n(e).length?(i=n(e),d=i.data()||{},d=n.extend(!0,{},d,d.options),d.$orig=i,l.src=o.opts.src||d.src||i.attr("href"),l.type||l.src||(l.type="inline",l.src=e)):l={type:"html",src:e+""},l.opts=n.extend(!0,{},o.opts,d),n.isArray(d.buttons)&&(l.opts.buttons=d.buttons),n.fancybox.isMobile&&l.opts.mobile&&(l.opts=h(l.opts,l.opts.mobile)),a=l.type||l.opts.type,r=l.src||"",!a&&r&&((s=r.match(/\.(mp4|mov|ogv|webm)((\?|#).*)?$/i))?(a="video",l.opts.video.format||(l.opts.video.format="video/"+("ogv"===s[1]?"ogg":s[1]))):r.match(/(^data:image\/[a-z0-9+\/=]*,)|(\.(jp(e|g|eg)|gif|png|bmp|webp|svg|ico)((\?|#).*)?$)/i)?a="image":r.match(/\.(pdf)((\?|#).*)?$/i)?(a="iframe",l=n.extend(!0,l,{contentType:"pdf",opts:{iframe:{preload:!1}}})):"#"===r.charAt(0)&&(a="inline")),a?l.type=a:o.trigger("objectNeedsType",l),l.contentType||(l.contentType=n.inArray(l.type,["html","inline","ajax"])>-1?"html":l.type),l.index=o.group.length,"auto"==l.opts.smallBtn&&(l.opts.smallBtn=n.inArray(l.type,["html","inline","ajax"])>-1),"auto"===l.opts.toolbar&&(l.opts.toolbar=!l.opts.smallBtn),l.$thumb=l.opts.$thumb||null,l.opts.$trigger&&l.index===o.opts.index&&(l.$thumb=l.opts.$trigger.find("img:first"),l.$thumb.length&&(l.opts.$orig=l.opts.$trigger)),l.$thumb&&l.$thumb.length||!l.opts.$orig||(l.$thumb=l.opts.$orig.find("img:first")),l.$thumb&&!l.$thumb.length&&(l.$thumb=null),l.thumb=l.opts.thumb||(l.$thumb?l.$thumb[0].src:null),"function"===n.type(l.opts.caption)&&(l.opts.caption=l.opts.caption.apply(e,[o,l])),"function"===n.type(o.opts.caption)&&(l.opts.caption=o.opts.caption.apply(e,[o,l])),l.opts.caption instanceof n||(l.opts.caption=void 0===l.opts.caption?"":l.opts.caption+""),"ajax"===l.type&&(c=r.split(/\s+/,2),c.length>1&&(l.src=c.shift(),l.opts.filter=c.shift())),l.opts.modal&&(l.opts=n.extend(!0,l.opts,{trapFocus:!0,infobar:0,toolbar:0,smallBtn:0,keyboard:0,slideShow:0,fullScreen:0,thumbs:0,touch:0,clickContent:!1,clickSlide:!1,clickOutside:!1,dblclickContent:!1,dblclickSlide:!1,dblclickOutside:!1})),o.group.push(l)}),Object.keys(o.slides).length&&(o.updateControls(),(e=o.Thumbs)&&e.isActive&&(e.create(),e.focus()))},addEvents:function(){var e=this;e.removeEvents(),e.$refs.container.on("click.fb-close","[data-fancybox-close]",function(t){t.stopPropagation(),t.preventDefault(),e.close(t)}).on("touchstart.fb-prev click.fb-prev","[data-fancybox-prev]",function(t){t.stopPropagation(),t.preventDefault(),e.previous()}).on("touchstart.fb-next click.fb-next","[data-fancybox-next]",function(t){t.stopPropagation(),t.preventDefault(),e.next()}).on("click.fb","[data-fancybox-zoom]",function(t){e[e.isScaledDown()?"scaleToActual":"scaleToFit"]()}),s.on("orientationchange.fb resize.fb",function(t){t&&t.originalEvent&&"resize"===t.originalEvent.type?(e.requestId&&u(e.requestId),e.requestId=d(function(){e.update(t)})):(e.current&&"iframe"===e.current.type&&e.$refs.stage.hide(),setTimeout(function(){e.$refs.stage.show(),e.update(t)},n.fancybox.isMobile?600:250))}),r.on("keydown.fb",function(t){var o=n.fancybox?n.fancybox.getInstance():null,i=o.current,a=t.keyCode||t.which;if(9==a)return void(i.opts.trapFocus&&e.focus(t));if(!(!i.opts.keyboard||t.ctrlKey||t.altKey||t.shiftKey||n(t.target).is("input,textarea,video,audio,select")))return 8===a||27===a?(t.preventDefault(),void e.close(t)):37===a||38===a?(t.preventDefault(),void e.previous()):39===a||40===a?(t.preventDefault(),void e.next()):void e.trigger("afterKeydown",t,a)}),e.group[e.currIndex].opts.idleTime&&(e.idleSecondsCounter=0,r.on("mousemove.fb-idle mouseleave.fb-idle mousedown.fb-idle touchstart.fb-idle touchmove.fb-idle scroll.fb-idle keydown.fb-idle",function(t){e.idleSecondsCounter=0,e.isIdle&&e.showControls(),e.isIdle=!1}),e.idleInterval=t.setInterval(function(){++e.idleSecondsCounter>=e.group[e.currIndex].opts.idleTime&&!e.isDragging&&(e.isIdle=!0,e.idleSecondsCounter=0,e.hideControls())},1e3))},removeEvents:function(){var e=this;s.off("orientationchange.fb resize.fb"),r.off("keydown.fb .fb-idle"),this.$refs.container.off(".fb-close .fb-prev .fb-next"),e.idleInterval&&(t.clearInterval(e.idleInterval),e.idleInterval=null)},previous:function(t){return this.jumpTo(this.currPos-1,t)},next:function(t){return this.jumpTo(this.currPos+1,t)},jumpTo:function(t,e){var o,i,a,s,r,c,l,d,u,f=this,h=f.group.length;if(!(f.isDragging||f.isClosing||f.isAnimating&&f.firstRun)){if(t=parseInt(t,10),!(a=f.current?f.current.opts.loop:f.opts.loop)&&(t<0||t>=h))return!1;if(o=f.firstRun=!Object.keys(f.slides).length,r=f.current,f.prevIndex=f.currIndex,f.prevPos=f.currPos,s=f.createSlide(t),h>1&&((a||s.index0)&&f.createSlide(t-1)),f.current=s,f.currIndex=s.index,f.currPos=s.pos,f.trigger("beforeShow",o),f.updateControls(),s.forcedDuration=void 0,n.isNumeric(e)?s.forcedDuration=e:e=s.opts[o?"animationDuration":"transitionDuration"],e=parseInt(e,10),i=f.isMoved(s),s.$slide.addClass("fancybox-slide--current"),o)return s.opts.animationEffect&&e&&f.$refs.container.css("transition-duration",e+"ms"),f.$refs.container.addClass("fancybox-is-open").trigger("focus"),f.loadSlide(s),void f.preload("image");c=n.fancybox.getTranslate(r.$slide),l=n.fancybox.getTranslate(f.$refs.stage),n.each(f.slides,function(t,e){n.fancybox.stop(e.$slide,!0)}),r.pos!==s.pos&&(r.isComplete=!1),r.$slide.removeClass("fancybox-slide--complete fancybox-slide--current"),i?(u=c.left-(r.pos*c.width+r.pos*r.opts.gutter),n.each(f.slides,function(t,o){o.$slide.removeClass("fancybox-animated").removeClass(function(t,e){return(e.match(/(^|\s)fancybox-fx-\S+/g)||[]).join(" ")});var i=o.pos*c.width+o.pos*o.opts.gutter;n.fancybox.setTranslate(o.$slide,{top:0,left:i-l.left+u}),o.pos!==s.pos&&o.$slide.addClass("fancybox-slide--"+(o.pos>s.pos?"next":"previous")),p(o.$slide),n.fancybox.animate(o.$slide,{top:0,left:(o.pos-s.pos)*c.width+(o.pos-s.pos)*o.opts.gutter},e,function(){o.$slide.css({transform:"",opacity:""}).removeClass("fancybox-slide--next fancybox-slide--previous"),o.pos===f.currPos&&f.complete()})})):e&&s.opts.transitionEffect&&(d="fancybox-animated fancybox-fx-"+s.opts.transitionEffect,r.$slide.addClass("fancybox-slide--"+(r.pos>s.pos?"next":"previous")),n.fancybox.animate(r.$slide,d,e,function(){r.$slide.removeClass(d).removeClass("fancybox-slide--next fancybox-slide--previous")},!1)),s.isLoaded?f.revealContent(s):f.loadSlide(s),f.preload("image")}},createSlide:function(t){var e,o,i=this;return o=t%i.group.length,o=o<0?i.group.length+o:o,!i.slides[t]&&i.group[o]&&(e=n('
    ').appendTo(i.$refs.stage),i.slides[t]=n.extend(!0,{},i.group[o],{pos:t,$slide:e,isLoaded:!1}),i.updateSlide(i.slides[t])),i.slides[t]},scaleToActual:function(t,e,o){var i,a,s,r,c,l=this,d=l.current,u=d.$content,f=n.fancybox.getTranslate(d.$slide).width,p=n.fancybox.getTranslate(d.$slide).height,h=d.width,g=d.height;l.isAnimating||l.isMoved()||!u||"image"!=d.type||!d.isLoaded||d.hasError||(l.isAnimating=!0,n.fancybox.stop(u),t=void 0===t?.5*f:t,e=void 0===e?.5*p:e,i=n.fancybox.getTranslate(u),i.top-=n.fancybox.getTranslate(d.$slide).top,i.left-=n.fancybox.getTranslate(d.$slide).left,r=h/i.width,c=g/i.height,a=.5*f-.5*h,s=.5*p-.5*g,h>f&&(a=i.left*r-(t*r-t),a>0&&(a=0),ap&&(s=i.top*c-(e*c-e),s>0&&(s=0),se-.5&&(l=e),d>o-.5&&(d=o),"image"===t.type?(u.top=Math.floor(.5*(o-d))+parseFloat(c.css("paddingTop")),u.left=Math.floor(.5*(e-l))+parseFloat(c.css("paddingLeft"))):"video"===t.contentType&&(a=t.opts.width&&t.opts.height?l/d:t.opts.ratio||16/9,d>l/a?d=l/a:l>d*a&&(l=d*a)),u.width=l,u.height=d,u)},update:function(t){var e=this;n.each(e.slides,function(n,o){e.updateSlide(o,t)})},updateSlide:function(t,e){var o=this,i=t&&t.$content,a=t.width||t.opts.width,s=t.height||t.opts.height,r=t.$slide;o.adjustCaption(t),i&&(a||s||"video"===t.contentType)&&!t.hasError&&(n.fancybox.stop(i),n.fancybox.setTranslate(i,o.getFitPos(t)),t.pos===o.currPos&&(o.isAnimating=!1,o.updateCursor())),o.adjustLayout(t),r.length&&(r.trigger("refresh"),t.pos===o.currPos&&o.$refs.toolbar.add(o.$refs.navigation.find(".fancybox-button--arrow_right")).toggleClass("compensate-for-scrollbar",r.get(0).scrollHeight>r.get(0).clientHeight)),o.trigger("onUpdate",t,e)},centerSlide:function(t){var e=this,o=e.current,i=o.$slide;!e.isClosing&&o&&(i.siblings().css({transform:"",opacity:""}),i.parent().children().removeClass("fancybox-slide--previous fancybox-slide--next"),n.fancybox.animate(i,{top:0,left:0,opacity:1},void 0===t?0:t,function(){i.css({transform:"",opacity:""}),o.isComplete||e.complete()},!1))},isMoved:function(t){var e,o,i=t||this.current;return!!i&&(o=n.fancybox.getTranslate(this.$refs.stage),e=n.fancybox.getTranslate(i.$slide),!i.$slide.hasClass("fancybox-animated")&&(Math.abs(e.top-o.top)>.5||Math.abs(e.left-o.left)>.5))},updateCursor:function(t,e){var o,i,a=this,s=a.current,r=a.$refs.container;s&&!a.isClosing&&a.Guestures&&(r.removeClass("fancybox-is-zoomable fancybox-can-zoomIn fancybox-can-zoomOut fancybox-can-swipe fancybox-can-pan"),o=a.canPan(t,e),i=!!o||a.isZoomable(),r.toggleClass("fancybox-is-zoomable",i),n("[data-fancybox-zoom]").prop("disabled",!i),o?r.addClass("fancybox-can-pan"):i&&("zoom"===s.opts.clickContent||n.isFunction(s.opts.clickContent)&&"zoom"==s.opts.clickContent(s))?r.addClass("fancybox-can-zoomIn"):s.opts.touch&&(s.opts.touch.vertical||a.group.length>1)&&"video"!==s.contentType&&r.addClass("fancybox-can-swipe"))},isZoomable:function(){var t,e=this,n=e.current;if(n&&!e.isClosing&&"image"===n.type&&!n.hasError){if(!n.isLoaded)return!0;if((t=e.getFitPos(n))&&(n.width>t.width||n.height>t.height))return!0}return!1},isScaledDown:function(t,e){var o=this,i=!1,a=o.current,s=a.$content;return void 0!==t&&void 0!==e?i=t1.5||Math.abs(a.height-s.height)>1.5)),s},loadSlide:function(t){var e,o,i,a=this;if(!t.isLoading&&!t.isLoaded){if(t.isLoading=!0,!1===a.trigger("beforeLoad",t))return t.isLoading=!1,!1;switch(e=t.type,o=t.$slide,o.off("refresh").trigger("onReset").addClass(t.opts.slideClass),e){case"image":a.setImage(t);break;case"iframe":a.setIframe(t);break;case"html":a.setContent(t,t.src||t.content);break;case"video":a.setContent(t,t.opts.video.tpl.replace(/\{\{src\}\}/gi,t.src).replace("{{format}}",t.opts.videoFormat||t.opts.video.format||"").replace("{{poster}}",t.thumb||""));break;case"inline":n(t.src).length?a.setContent(t,n(t.src)):a.setError(t);break;case"ajax":a.showLoading(t),i=n.ajax(n.extend({},t.opts.ajax.settings,{url:t.src,success:function(e,n){"success"===n&&a.setContent(t,e)},error:function(e,n){e&&"abort"!==n&&a.setError(t)}})),o.one("onReset",function(){i.abort()});break;default:a.setError(t)}return!0}},setImage:function(t){var o,i=this;setTimeout(function(){var e=t.$image;i.isClosing||!t.isLoading||e&&e.length&&e[0].complete||t.hasError||i.showLoading(t)},50),i.checkSrcset(t),t.$content=n('
    ').addClass("fancybox-is-hidden").appendTo(t.$slide.addClass("fancybox-slide--image")),!1!==t.opts.preload&&t.opts.width&&t.opts.height&&t.thumb&&(t.width=t.opts.width,t.height=t.opts.height,o=e.createElement("img"),o.onerror=function(){n(this).remove(),t.$ghost=null},o.onload=function(){i.afterLoad(t)},t.$ghost=n(o).addClass("fancybox-image").appendTo(t.$content).attr("src",t.thumb)),i.setBigImage(t)},checkSrcset:function(e){var n,o,i,a,s=e.opts.srcset||e.opts.image.srcset;if(s){i=t.devicePixelRatio||1,a=t.innerWidth*i,o=s.split(",").map(function(t){var e={};return t.trim().split(/\s+/).forEach(function(t,n){var o=parseInt(t.substring(0,t.length-1),10);if(0===n)return e.url=t;o&&(e.value=o,e.postfix=t[t.length-1])}),e}),o.sort(function(t,e){return t.value-e.value});for(var r=0;r=a||"x"===c.postfix&&c.value>=i){n=c;break}}!n&&o.length&&(n=o[o.length-1]),n&&(e.src=n.url,e.width&&e.height&&"w"==n.postfix&&(e.height=e.width/e.height*n.value,e.width=n.value),e.opts.srcset=s)}},setBigImage:function(t){var o=this,i=e.createElement("img"),a=n(i);t.$image=a.one("error",function(){o.setError(t)}).one("load",function(){var e;t.$ghost||(o.resolveImageSlideSize(t,this.naturalWidth,this.naturalHeight),o.afterLoad(t)),o.isClosing||(t.opts.srcset&&(e=t.opts.sizes,e&&"auto"!==e||(e=(t.width/t.height>1&&s.width()/s.height()>1?"100":Math.round(t.width/t.height*100))+"vw"),a.attr("sizes",e).attr("srcset",t.opts.srcset)),t.$ghost&&setTimeout(function(){t.$ghost&&!o.isClosing&&t.$ghost.hide()},Math.min(300,Math.max(1e3,t.height/1600))),o.hideLoading(t))}).addClass("fancybox-image").attr("src",t.src).appendTo(t.$content),(i.complete||"complete"==i.readyState)&&a.naturalWidth&&a.naturalHeight?a.trigger("load"):i.error&&a.trigger("error")},resolveImageSlideSize:function(t,e,n){var o=parseInt(t.opts.width,10),i=parseInt(t.opts.height,10);t.width=e,t.height=n,o>0&&(t.width=o,t.height=Math.floor(o*n/e)),i>0&&(t.width=Math.floor(i*e/n),t.height=i)},setIframe:function(t){var e,o=this,i=t.opts.iframe,a=t.$slide;t.$content=n('
    ').css(i.css).appendTo(a),a.addClass("fancybox-slide--"+t.contentType),t.$iframe=e=n(i.tpl.replace(/\{rnd\}/g,(new Date).getTime())).attr(i.attr).appendTo(t.$content),i.preload?(o.showLoading(t),e.on("load.fb error.fb",function(e){this.isReady=1,t.$slide.trigger("refresh"),o.afterLoad(t)}),a.on("refresh.fb",function(){var n,o,s=t.$content,r=i.css.width,c=i.css.height;if(1===e[0].isReady){try{n=e.contents(),o=n.find("body")}catch(t){}o&&o.length&&o.children().length&&(a.css("overflow","visible"),s.css({width:"100%","max-width":"100%",height:"9999px"}),void 0===r&&(r=Math.ceil(Math.max(o[0].clientWidth,o.outerWidth(!0)))),s.css("width",r||"").css("max-width",""),void 0===c&&(c=Math.ceil(Math.max(o[0].clientHeight,o.outerHeight(!0)))),s.css("height",c||""),a.css("overflow","auto")),s.removeClass("fancybox-is-hidden")}})):o.afterLoad(t),e.attr("src",t.src),a.one("onReset",function(){try{n(this).find("iframe").hide().unbind().attr("src","//about:blank")}catch(t){}n(this).off("refresh.fb").empty(),t.isLoaded=!1,t.isRevealed=!1})},setContent:function(t,e){var o=this;o.isClosing||(o.hideLoading(t),t.$content&&n.fancybox.stop(t.$content),t.$slide.empty(),l(e)&&e.parent().length?((e.hasClass("fancybox-content")||e.parent().hasClass("fancybox-content"))&&e.parents(".fancybox-slide").trigger("onReset"),t.$placeholder=n("
    ").hide().insertAfter(e),e.css("display","inline-block")):t.hasError||("string"===n.type(e)&&(e=n("
    ").append(n.trim(e)).contents()),t.opts.filter&&(e=n("
    ").html(e).find(t.opts.filter))),t.$slide.one("onReset",function(){n(this).find("video,audio").trigger("pause"),t.$placeholder&&(t.$placeholder.after(e.removeClass("fancybox-content").hide()).remove(),t.$placeholder=null),t.$smallBtn&&(t.$smallBtn.remove(),t.$smallBtn=null),t.hasError||(n(this).empty(),t.isLoaded=!1,t.isRevealed=!1)}),n(e).appendTo(t.$slide),n(e).is("video,audio")&&(n(e).addClass("fancybox-video"),n(e).wrap("
    "),t.contentType="video",t.opts.width=t.opts.width||n(e).attr("width"),t.opts.height=t.opts.height||n(e).attr("height")),t.$content=t.$slide.children().filter("div,form,main,video,audio,article,.fancybox-content").first(),t.$content.siblings().hide(),t.$content.length||(t.$content=t.$slide.wrapInner("
    ").children().first()),t.$content.addClass("fancybox-content"),t.$slide.addClass("fancybox-slide--"+t.contentType),o.afterLoad(t))},setError:function(t){t.hasError=!0,t.$slide.trigger("onReset").removeClass("fancybox-slide--"+t.contentType).addClass("fancybox-slide--error"),t.contentType="html",this.setContent(t,this.translate(t,t.opts.errorTpl)),t.pos===this.currPos&&(this.isAnimating=!1)},showLoading:function(t){var e=this;(t=t||e.current)&&!t.$spinner&&(t.$spinner=n(e.translate(e,e.opts.spinnerTpl)).appendTo(t.$slide).hide().fadeIn("fast"))},hideLoading:function(t){var e=this;(t=t||e.current)&&t.$spinner&&(t.$spinner.stop().remove(),delete t.$spinner)},afterLoad:function(t){var e=this;e.isClosing||(t.isLoading=!1,t.isLoaded=!0,e.trigger("afterLoad",t),e.hideLoading(t),!t.opts.smallBtn||t.$smallBtn&&t.$smallBtn.length||(t.$smallBtn=n(e.translate(t,t.opts.btnTpl.smallBtn)).appendTo(t.$content)),t.opts.protect&&t.$content&&!t.hasError&&(t.$content.on("contextmenu.fb",function(t){return 2==t.button&&t.preventDefault(),!0}),"image"===t.type&&n('
    ').appendTo(t.$content)),e.adjustCaption(t),e.adjustLayout(t),t.pos===e.currPos&&e.updateCursor(),e.revealContent(t))},adjustCaption:function(t){var e,n=this,o=t||n.current,i=o.opts.caption,a=o.opts.preventCaptionOverlap,s=n.$refs.caption,r=!1;s.toggleClass("fancybox-caption--separate",a),a&&i&&i.length&&(o.pos!==n.currPos?(e=s.clone().appendTo(s.parent()),e.children().eq(0).empty().html(i),r=e.outerHeight(!0),e.empty().remove()):n.$caption&&(r=n.$caption.outerHeight(!0)),o.$slide.css("padding-bottom",r||""))},adjustLayout:function(t){var e,n,o,i,a=this,s=t||a.current;s.isLoaded&&!0!==s.opts.disableLayoutFix&&(s.$content.css("margin-bottom",""),s.$content.outerHeight()>s.$slide.height()+.5&&(o=s.$slide[0].style["padding-bottom"],i=s.$slide.css("padding-bottom"),parseFloat(i)>0&&(e=s.$slide[0].scrollHeight,s.$slide.css("padding-bottom",0),Math.abs(e-s.$slide[0].scrollHeight)<1&&(n=i),s.$slide.css("padding-bottom",o))),s.$content.css("margin-bottom",n))},revealContent:function(t){var e,o,i,a,s=this,r=t.$slide,c=!1,l=!1,d=s.isMoved(t),u=t.isRevealed;return t.isRevealed=!0,e=t.opts[s.firstRun?"animationEffect":"transitionEffect"],i=t.opts[s.firstRun?"animationDuration":"transitionDuration"],i=parseInt(void 0===t.forcedDuration?i:t.forcedDuration,10),!d&&t.pos===s.currPos&&i||(e=!1),"zoom"===e&&(t.pos===s.currPos&&i&&"image"===t.type&&!t.hasError&&(l=s.getThumbPos(t))?c=s.getFitPos(t):e="fade"),"zoom"===e?(s.isAnimating=!0,c.scaleX=c.width/l.width,c.scaleY=c.height/l.height,a=t.opts.zoomOpacity,"auto"==a&&(a=Math.abs(t.width/t.height-l.width/l.height)>.1),a&&(l.opacity=.1,c.opacity=1),n.fancybox.setTranslate(t.$content.removeClass("fancybox-is-hidden"),l),p(t.$content),void n.fancybox.animate(t.$content,c,i,function(){s.isAnimating=!1,s.complete()})):(s.updateSlide(t),e?(n.fancybox.stop(r),o="fancybox-slide--"+(t.pos>=s.prevPos?"next":"previous")+" fancybox-animated fancybox-fx-"+e,r.addClass(o).removeClass("fancybox-slide--current"),t.$content.removeClass("fancybox-is-hidden"),p(r),"image"!==t.type&&t.$content.hide().show(0),void n.fancybox.animate(r,"fancybox-slide--current",i,function(){r.removeClass(o).css({transform:"",opacity:""}),t.pos===s.currPos&&s.complete()},!0)):(t.$content.removeClass("fancybox-is-hidden"),u||!d||"image"!==t.type||t.hasError||t.$content.hide().fadeIn("fast"),void(t.pos===s.currPos&&s.complete())))},getThumbPos:function(t){var e,o,i,a,s,r=!1,c=t.$thumb;return!(!c||!g(c[0]))&&(e=n.fancybox.getTranslate(c),o=parseFloat(c.css("border-top-width")||0),i=parseFloat(c.css("border-right-width")||0),a=parseFloat(c.css("border-bottom-width")||0),s=parseFloat(c.css("border-left-width")||0),r={top:e.top+o,left:e.left+s,width:e.width-i-s,height:e.height-o-a,scaleX:1,scaleY:1},e.width>0&&e.height>0&&r)},complete:function(){var t,e=this,o=e.current,i={};!e.isMoved()&&o.isLoaded&&(o.isComplete||(o.isComplete=!0,o.$slide.siblings().trigger("onReset"),e.preload("inline"),p(o.$slide),o.$slide.addClass("fancybox-slide--complete"),n.each(e.slides,function(t,o){o.pos>=e.currPos-1&&o.pos<=e.currPos+1?i[o.pos]=o:o&&(n.fancybox.stop(o.$slide),o.$slide.off().remove())}),e.slides=i),e.isAnimating=!1,e.updateCursor(),e.trigger("afterShow"),o.opts.video.autoStart&&o.$slide.find("video,audio").filter(":visible:first").trigger("play").one("ended",function(){Document.exitFullscreen?Document.exitFullscreen():this.webkitExitFullscreen&&this.webkitExitFullscreen(),e.next()}),o.opts.autoFocus&&"html"===o.contentType&&(t=o.$content.find("input[autofocus]:enabled:visible:first"),t.length?t.trigger("focus"):e.focus(null,!0)),o.$slide.scrollTop(0).scrollLeft(0))},preload:function(t){var e,n,o=this;o.group.length<2||(n=o.slides[o.currPos+1],e=o.slides[o.currPos-1],e&&e.type===t&&o.loadSlide(e),n&&n.type===t&&o.loadSlide(n))},focus:function(t,o){var i,a,s=this,r=["a[href]","area[href]",'input:not([disabled]):not([type="hidden"]):not([aria-hidden])',"select:not([disabled]):not([aria-hidden])","textarea:not([disabled]):not([aria-hidden])","button:not([disabled]):not([aria-hidden])","iframe","object","embed","video","audio","[contenteditable]",'[tabindex]:not([tabindex^="-"])'].join(",");s.isClosing||(i=!t&&s.current&&s.current.isComplete?s.current.$slide.find("*:visible"+(o?":not(.fancybox-close-small)":"")):s.$refs.container.find("*:visible"),i=i.filter(r).filter(function(){return"hidden"!==n(this).css("visibility")&&!n(this).hasClass("disabled")}),i.length?(a=i.index(e.activeElement),t&&t.shiftKey?(a<0||0==a)&&(t.preventDefault(),i.eq(i.length-1).trigger("focus")):(a<0||a==i.length-1)&&(t&&t.preventDefault(),i.eq(0).trigger("focus"))):s.$refs.container.trigger("focus"))},activate:function(){var t=this;n(".fancybox-container").each(function(){var e=n(this).data("FancyBox");e&&e.id!==t.id&&!e.isClosing&&(e.trigger("onDeactivate"),e.removeEvents(),e.isVisible=!1)}),t.isVisible=!0,(t.current||t.isIdle)&&(t.update(),t.updateControls()),t.trigger("onActivate"),t.addEvents()},close:function(t,e){var o,i,a,s,r,c,l,u=this,f=u.current,h=function(){u.cleanUp(t)};return!u.isClosing&&(u.isClosing=!0,!1===u.trigger("beforeClose",t)?(u.isClosing=!1,d(function(){u.update()}),!1):(u.removeEvents(),a=f.$content,o=f.opts.animationEffect,i=n.isNumeric(e)?e:o?f.opts.animationDuration:0,f.$slide.removeClass("fancybox-slide--complete fancybox-slide--next fancybox-slide--previous fancybox-animated"),!0!==t?n.fancybox.stop(f.$slide):o=!1,f.$slide.siblings().trigger("onReset").remove(),i&&u.$refs.container.removeClass("fancybox-is-open").addClass("fancybox-is-closing").css("transition-duration",i+"ms"),u.hideLoading(f),u.hideControls(!0),u.updateCursor(),"zoom"!==o||a&&i&&"image"===f.type&&!u.isMoved()&&!f.hasError&&(l=u.getThumbPos(f))||(o="fade"),"zoom"===o?(n.fancybox.stop(a),s=n.fancybox.getTranslate(a),c={top:s.top,left:s.left,scaleX:s.width/l.width,scaleY:s.height/l.height,width:l.width,height:l.height},r=f.opts.zoomOpacity, "auto"==r&&(r=Math.abs(f.width/f.height-l.width/l.height)>.1),r&&(l.opacity=0),n.fancybox.setTranslate(a,c),p(a),n.fancybox.animate(a,l,i,h),!0):(o&&i?n.fancybox.animate(f.$slide.addClass("fancybox-slide--previous").removeClass("fancybox-slide--current"),"fancybox-animated fancybox-fx-"+o,i,h):!0===t?setTimeout(h,i):h(),!0)))},cleanUp:function(e){var o,i,a,s=this,r=s.current.opts.$orig;s.current.$slide.trigger("onReset"),s.$refs.container.empty().remove(),s.trigger("afterClose",e),s.current.opts.backFocus&&(r&&r.length&&r.is(":visible")||(r=s.$trigger),r&&r.length&&(i=t.scrollX,a=t.scrollY,r.trigger("focus"),n("html, body").scrollTop(a).scrollLeft(i))),s.current=null,o=n.fancybox.getInstance(),o?o.activate():(n("body").removeClass("fancybox-active compensate-for-scrollbar"),n("#fancybox-style-noscroll").remove())},trigger:function(t,e){var o,i=Array.prototype.slice.call(arguments,1),a=this,s=e&&e.opts?e:a.current;if(s?i.unshift(s):s=a,i.unshift(a),n.isFunction(s.opts[t])&&(o=s.opts[t].apply(s,i)),!1===o)return o;"afterClose"!==t&&a.$refs?a.$refs.container.trigger(t+".fb",i):r.trigger(t+".fb",i)},updateControls:function(){var t=this,o=t.current,i=o.index,a=t.$refs.container,s=t.$refs.caption,r=o.opts.caption;o.$slide.trigger("refresh"),r&&r.length?(t.$caption=s,s.children().eq(0).html(r)):t.$caption=null,t.hasHiddenControls||t.isIdle||t.showControls(),a.find("[data-fancybox-count]").html(t.group.length),a.find("[data-fancybox-index]").html(i+1),a.find("[data-fancybox-prev]").prop("disabled",!o.opts.loop&&i<=0),a.find("[data-fancybox-next]").prop("disabled",!o.opts.loop&&i>=t.group.length-1),"image"===o.type?a.find("[data-fancybox-zoom]").show().end().find("[data-fancybox-download]").attr("href",o.opts.image.src||o.src).show():o.opts.toolbar&&a.find("[data-fancybox-download],[data-fancybox-zoom]").hide(),n(e.activeElement).is(":hidden,[disabled]")&&t.$refs.container.trigger("focus")},hideControls:function(t){var e=this,n=["infobar","toolbar","nav"];!t&&e.current.opts.preventCaptionOverlap||n.push("caption"),this.$refs.container.removeClass(n.map(function(t){return"fancybox-show-"+t}).join(" ")),this.hasHiddenControls=!0},showControls:function(){var t=this,e=t.current?t.current.opts:t.opts,n=t.$refs.container;t.hasHiddenControls=!1,t.idleSecondsCounter=0,n.toggleClass("fancybox-show-toolbar",!(!e.toolbar||!e.buttons)).toggleClass("fancybox-show-infobar",!!(e.infobar&&t.group.length>1)).toggleClass("fancybox-show-caption",!!t.$caption).toggleClass("fancybox-show-nav",!!(e.arrows&&t.group.length>1)).toggleClass("fancybox-is-modal",!!e.modal)},toggleControls:function(){this.hasHiddenControls?this.showControls():this.hideControls()}}),n.fancybox={version:"3.5.7",defaults:a,getInstance:function(t){var e=n('.fancybox-container:not(".fancybox-is-closing"):last').data("FancyBox"),o=Array.prototype.slice.call(arguments,1);return e instanceof b&&("string"===n.type(t)?e[t].apply(e,o):"function"===n.type(t)&&t.apply(e,o),e)},open:function(t,e,n){return new b(t,e,n)},close:function(t){var e=this.getInstance();e&&(e.close(),!0===t&&this.close(t))},destroy:function(){this.close(!0),r.add("body").off("click.fb-start","**")},isMobile:/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),use3d:function(){var n=e.createElement("div");return t.getComputedStyle&&t.getComputedStyle(n)&&t.getComputedStyle(n).getPropertyValue("transform")&&!(e.documentMode&&e.documentMode<11)}(),getTranslate:function(t){var e;return!(!t||!t.length)&&(e=t[0].getBoundingClientRect(),{top:e.top||0,left:e.left||0,width:e.width,height:e.height,opacity:parseFloat(t.css("opacity"))})},setTranslate:function(t,e){var n="",o={};if(t&&e)return void 0===e.left&&void 0===e.top||(n=(void 0===e.left?t.position().left:e.left)+"px, "+(void 0===e.top?t.position().top:e.top)+"px",n=this.use3d?"translate3d("+n+", 0px)":"translate("+n+")"),void 0!==e.scaleX&&void 0!==e.scaleY?n+=" scale("+e.scaleX+", "+e.scaleY+")":void 0!==e.scaleX&&(n+=" scaleX("+e.scaleX+")"),n.length&&(o.transform=n),void 0!==e.opacity&&(o.opacity=e.opacity),void 0!==e.width&&(o.width=e.width),void 0!==e.height&&(o.height=e.height),t.css(o)},animate:function(t,e,o,i,a){var s,r=this;n.isFunction(o)&&(i=o,o=null),r.stop(t),s=r.getTranslate(t),t.on(f,function(c){(!c||!c.originalEvent||t.is(c.originalEvent.target)&&"z-index"!=c.originalEvent.propertyName)&&(r.stop(t),n.isNumeric(o)&&t.css("transition-duration",""),n.isPlainObject(e)?void 0!==e.scaleX&&void 0!==e.scaleY&&r.setTranslate(t,{top:e.top,left:e.left,width:s.width*e.scaleX,height:s.height*e.scaleY,scaleX:1,scaleY:1}):!0!==a&&t.removeClass(e),n.isFunction(i)&&i(c))}),n.isNumeric(o)&&t.css("transition-duration",o+"ms"),n.isPlainObject(e)?(void 0!==e.scaleX&&void 0!==e.scaleY&&(delete e.width,delete e.height,t.parent().hasClass("fancybox-slide--image")&&t.parent().addClass("fancybox-is-scaling")),n.fancybox.setTranslate(t,e)):t.addClass(e),t.data("timer",setTimeout(function(){t.trigger(f)},o+33))},stop:function(t,e){t&&t.length&&(clearTimeout(t.data("timer")),e&&t.trigger(f),t.off(f).css("transition-duration",""),t.parent().removeClass("fancybox-is-scaling"))}},n.fn.fancybox=function(t){var e;return t=t||{},e=t.selector||!1,e?n("body").off("click.fb-start",e).on("click.fb-start",e,{options:t},i):this.off("click.fb-start").on("click.fb-start",{items:this,options:t},i),this},r.on("click.fb-start","[data-fancybox]",i),r.on("click.fb-start","[data-fancybox-trigger]",function(t){n('[data-fancybox="'+n(this).attr("data-fancybox-trigger")+'"]').eq(n(this).attr("data-fancybox-index")||0).trigger("click.fb-start",{$trigger:n(this)})}),function(){var t=null;r.on("mousedown mouseup focus blur",".fancybox-button",function(e){switch(e.type){case"mousedown":t=n(this);break;case"mouseup":t=null;break;case"focusin":n(".fancybox-button").removeClass("fancybox-focus"),n(this).is(t)||n(this).is("[disabled]")||n(this).addClass("fancybox-focus");break;case"focusout":n(".fancybox-button").removeClass("fancybox-focus")}})}()}}(window,document,jQuery),function(t){"use strict";var e={youtube:{matcher:/(youtube\.com|youtu\.be|youtube\-nocookie\.com)\/(watch\?(.*&)?v=|v\/|u\/|embed\/?)?(videoseries\?list=(.*)|[\w-]{11}|\?listType=(.*)&list=(.*))(.*)/i,params:{autoplay:1,autohide:1,fs:1,rel:0,hd:1,wmode:"transparent",enablejsapi:1,html5:1},paramPlace:8,type:"iframe",url:"https://www.youtube-nocookie.com/embed/$4",thumb:"https://img.youtube.com/vi/$4/hqdefault.jpg"},vimeo:{matcher:/^.+vimeo.com\/(.*\/)?([\d]+)(.*)?/,params:{autoplay:1,hd:1,show_title:1,show_byline:1,show_portrait:0,fullscreen:1},paramPlace:3,type:"iframe",url:"//player.vimeo.com/video/$2"},instagram:{matcher:/(instagr\.am|instagram\.com)\/p\/([a-zA-Z0-9_\-]+)\/?/i,type:"image",url:"//$1/p/$2/media/?size=l"},gmap_place:{matcher:/(maps\.)?google\.([a-z]{2,3}(\.[a-z]{2})?)\/(((maps\/(place\/(.*)\/)?\@(.*),(\d+.?\d+?)z))|(\?ll=))(.*)?/i,type:"iframe",url:function(t){return"//maps.google."+t[2]+"/?ll="+(t[9]?t[9]+"&z="+Math.floor(t[10])+(t[12]?t[12].replace(/^\//,"&"):""):t[12]+"").replace(/\?/,"&")+"&output="+(t[12]&&t[12].indexOf("layer=c")>0?"svembed":"embed")}},gmap_search:{matcher:/(maps\.)?google\.([a-z]{2,3}(\.[a-z]{2})?)\/(maps\/search\/)(.*)/i,type:"iframe",url:function(t){return"//maps.google."+t[2]+"/maps?q="+t[5].replace("query=","q=").replace("api=1","")+"&output=embed"}}},n=function(e,n,o){if(e)return o=o||"","object"===t.type(o)&&(o=t.param(o,!0)),t.each(n,function(t,n){e=e.replace("$"+t,n||"")}),o.length&&(e+=(e.indexOf("?")>0?"&":"?")+o),e};t(document).on("objectNeedsType.fb",function(o,i,a){var s,r,c,l,d,u,f,p=a.src||"",h=!1;s=t.extend(!0,{},e,a.opts.media),t.each(s,function(e,o){if(c=p.match(o.matcher)){if(h=o.type,f=e,u={},o.paramPlace&&c[o.paramPlace]){d=c[o.paramPlace],"?"==d[0]&&(d=d.substring(1)),d=d.split("&");for(var i=0;i1&&("youtube"===n.contentSource||"vimeo"===n.contentSource)&&o.load(n.contentSource)}})}(jQuery),function(t,e,n){"use strict";var o=function(){return t.requestAnimationFrame||t.webkitRequestAnimationFrame||t.mozRequestAnimationFrame||t.oRequestAnimationFrame||function(e){return t.setTimeout(e,1e3/60)}}(),i=function(){return t.cancelAnimationFrame||t.webkitCancelAnimationFrame||t.mozCancelAnimationFrame||t.oCancelAnimationFrame||function(e){t.clearTimeout(e)}}(),a=function(e){var n=[];e=e.originalEvent||e||t.e,e=e.touches&&e.touches.length?e.touches:e.changedTouches&&e.changedTouches.length?e.changedTouches:[e];for(var o in e)e[o].pageX?n.push({x:e[o].pageX,y:e[o].pageY}):e[o].clientX&&n.push({x:e[o].clientX,y:e[o].clientY});return n},s=function(t,e,n){return e&&t?"x"===n?t.x-e.x:"y"===n?t.y-e.y:Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2)):0},r=function(t){if(t.is('a,area,button,[role="button"],input,label,select,summary,textarea,video,audio,iframe')||n.isFunction(t.get(0).onclick)||t.data("selectable"))return!0;for(var e=0,o=t[0].attributes,i=o.length;ee.clientHeight,a=("scroll"===o||"auto"===o)&&e.scrollWidth>e.clientWidth;return i||a},l=function(t){for(var e=!1;;){if(e=c(t.get(0)))break;if(t=t.parent(),!t.length||t.hasClass("fancybox-stage")||t.is("body"))break}return e},d=function(t){var e=this;e.instance=t,e.$bg=t.$refs.bg,e.$stage=t.$refs.stage,e.$container=t.$refs.container,e.destroy(),e.$container.on("touchstart.fb.touch mousedown.fb.touch",n.proxy(e,"ontouchstart"))};d.prototype.destroy=function(){var t=this;t.$container.off(".fb.touch"),n(e).off(".fb.touch"),t.requestId&&(i(t.requestId),t.requestId=null),t.tapped&&(clearTimeout(t.tapped),t.tapped=null)},d.prototype.ontouchstart=function(o){var i=this,c=n(o.target),d=i.instance,u=d.current,f=u.$slide,p=u.$content,h="touchstart"==o.type;if(h&&i.$container.off("mousedown.fb.touch"),(!o.originalEvent||2!=o.originalEvent.button)&&f.length&&c.length&&!r(c)&&!r(c.parent())&&(c.is("img")||!(o.originalEvent.clientX>c[0].clientWidth+c.offset().left))){if(!u||d.isAnimating||u.$slide.hasClass("fancybox-animated"))return o.stopPropagation(),void o.preventDefault();i.realPoints=i.startPoints=a(o),i.startPoints.length&&(u.touch&&o.stopPropagation(),i.startEvent=o,i.canTap=!0,i.$target=c,i.$content=p,i.opts=u.opts.touch,i.isPanning=!1,i.isSwiping=!1,i.isZooming=!1,i.isScrolling=!1,i.canPan=d.canPan(),i.startTime=(new Date).getTime(),i.distanceX=i.distanceY=i.distance=0,i.canvasWidth=Math.round(f[0].clientWidth),i.canvasHeight=Math.round(f[0].clientHeight),i.contentLastPos=null,i.contentStartPos=n.fancybox.getTranslate(i.$content)||{top:0,left:0},i.sliderStartPos=n.fancybox.getTranslate(f),i.stagePos=n.fancybox.getTranslate(d.$refs.stage),i.sliderStartPos.top-=i.stagePos.top,i.sliderStartPos.left-=i.stagePos.left,i.contentStartPos.top-=i.stagePos.top,i.contentStartPos.left-=i.stagePos.left,n(e).off(".fb.touch").on(h?"touchend.fb.touch touchcancel.fb.touch":"mouseup.fb.touch mouseleave.fb.touch",n.proxy(i,"ontouchend")).on(h?"touchmove.fb.touch":"mousemove.fb.touch",n.proxy(i,"ontouchmove")),n.fancybox.isMobile&&e.addEventListener("scroll",i.onscroll,!0),((i.opts||i.canPan)&&(c.is(i.$stage)||i.$stage.find(c).length)||(c.is(".fancybox-image")&&o.preventDefault(),n.fancybox.isMobile&&c.parents(".fancybox-caption").length))&&(i.isScrollable=l(c)||l(c.parent()),n.fancybox.isMobile&&i.isScrollable||o.preventDefault(),(1===i.startPoints.length||u.hasError)&&(i.canPan?(n.fancybox.stop(i.$content),i.isPanning=!0):i.isSwiping=!0,i.$container.addClass("fancybox-is-grabbing")),2===i.startPoints.length&&"image"===u.type&&(u.isLoaded||u.$ghost)&&(i.canTap=!1,i.isSwiping=!1,i.isPanning=!1,i.isZooming=!0,n.fancybox.stop(i.$content),i.centerPointStartX=.5*(i.startPoints[0].x+i.startPoints[1].x)-n(t).scrollLeft(),i.centerPointStartY=.5*(i.startPoints[0].y+i.startPoints[1].y)-n(t).scrollTop(),i.percentageOfImageAtPinchPointX=(i.centerPointStartX-i.contentStartPos.left)/i.contentStartPos.width,i.percentageOfImageAtPinchPointY=(i.centerPointStartY-i.contentStartPos.top)/i.contentStartPos.height,i.startDistanceBetweenFingers=s(i.startPoints[0],i.startPoints[1]))))}},d.prototype.onscroll=function(t){var n=this;n.isScrolling=!0,e.removeEventListener("scroll",n.onscroll,!0)},d.prototype.ontouchmove=function(t){var e=this;return void 0!==t.originalEvent.buttons&&0===t.originalEvent.buttons?void e.ontouchend(t):e.isScrolling?void(e.canTap=!1):(e.newPoints=a(t),void((e.opts||e.canPan)&&e.newPoints.length&&e.newPoints.length&&(e.isSwiping&&!0===e.isSwiping||t.preventDefault(),e.distanceX=s(e.newPoints[0],e.startPoints[0],"x"),e.distanceY=s(e.newPoints[0],e.startPoints[0],"y"),e.distance=s(e.newPoints[0],e.startPoints[0]),e.distance>0&&(e.isSwiping?e.onSwipe(t):e.isPanning?e.onPan():e.isZooming&&e.onZoom()))))},d.prototype.onSwipe=function(e){var a,s=this,r=s.instance,c=s.isSwiping,l=s.sliderStartPos.left||0;if(!0!==c)"x"==c&&(s.distanceX>0&&(s.instance.group.length<2||0===s.instance.current.index&&!s.instance.current.opts.loop)?l+=Math.pow(s.distanceX,.8):s.distanceX<0&&(s.instance.group.length<2||s.instance.current.index===s.instance.group.length-1&&!s.instance.current.opts.loop)?l-=Math.pow(-s.distanceX,.8):l+=s.distanceX),s.sliderLastPos={top:"x"==c?0:s.sliderStartPos.top+s.distanceY,left:l},s.requestId&&(i(s.requestId),s.requestId=null),s.requestId=o(function(){s.sliderLastPos&&(n.each(s.instance.slides,function(t,e){var o=e.pos-s.instance.currPos;n.fancybox.setTranslate(e.$slide,{top:s.sliderLastPos.top,left:s.sliderLastPos.left+o*s.canvasWidth+o*e.opts.gutter})}),s.$container.addClass("fancybox-is-sliding"))});else if(Math.abs(s.distance)>10){if(s.canTap=!1,r.group.length<2&&s.opts.vertical?s.isSwiping="y":r.isDragging||!1===s.opts.vertical||"auto"===s.opts.vertical&&n(t).width()>800?s.isSwiping="x":(a=Math.abs(180*Math.atan2(s.distanceY,s.distanceX)/Math.PI),s.isSwiping=a>45&&a<135?"y":"x"),"y"===s.isSwiping&&n.fancybox.isMobile&&s.isScrollable)return void(s.isScrolling=!0);r.isDragging=s.isSwiping,s.startPoints=s.newPoints,n.each(r.slides,function(t,e){var o,i;n.fancybox.stop(e.$slide),o=n.fancybox.getTranslate(e.$slide),i=n.fancybox.getTranslate(r.$refs.stage),e.$slide.css({transform:"",opacity:"","transition-duration":""}).removeClass("fancybox-animated").removeClass(function(t,e){return(e.match(/(^|\s)fancybox-fx-\S+/g)||[]).join(" ")}),e.pos===r.current.pos&&(s.sliderStartPos.top=o.top-i.top,s.sliderStartPos.left=o.left-i.left),n.fancybox.setTranslate(e.$slide,{top:o.top-i.top,left:o.left-i.left})}),r.SlideShow&&r.SlideShow.isActive&&r.SlideShow.stop()}},d.prototype.onPan=function(){var t=this;if(s(t.newPoints[0],t.realPoints[0])<(n.fancybox.isMobile?10:5))return void(t.startPoints=t.newPoints);t.canTap=!1,t.contentLastPos=t.limitMovement(),t.requestId&&i(t.requestId),t.requestId=o(function(){n.fancybox.setTranslate(t.$content,t.contentLastPos)})},d.prototype.limitMovement=function(){var t,e,n,o,i,a,s=this,r=s.canvasWidth,c=s.canvasHeight,l=s.distanceX,d=s.distanceY,u=s.contentStartPos,f=u.left,p=u.top,h=u.width,g=u.height;return i=h>r?f+l:f,a=p+d,t=Math.max(0,.5*r-.5*h),e=Math.max(0,.5*c-.5*g),n=Math.min(r-h,.5*r-.5*h),o=Math.min(c-g,.5*c-.5*g),l>0&&i>t&&(i=t-1+Math.pow(-t+f+l,.8)||0),l<0&&i0&&a>e&&(a=e-1+Math.pow(-e+p+d,.8)||0),d<0&&aa?(t=t>0?0:t,t=ts?(e=e>0?0:e,e=e1&&(o.dMs>130&&s>10||s>50);o.sliderLastPos=null,"y"==t&&!e&&Math.abs(o.distanceY)>50?(n.fancybox.animate(o.instance.current.$slide,{top:o.sliderStartPos.top+o.distanceY+150*o.velocityY,opacity:0},200),i=o.instance.close(!0,250)):r&&o.distanceX>0?i=o.instance.previous(300):r&&o.distanceX<0&&(i=o.instance.next(300)),!1!==i||"x"!=t&&"y"!=t||o.instance.centerSlide(200),o.$container.removeClass("fancybox-is-sliding")},d.prototype.endPanning=function(){var t,e,o,i=this;i.contentLastPos&&(!1===i.opts.momentum||i.dMs>350?(t=i.contentLastPos.left,e=i.contentLastPos.top):(t=i.contentLastPos.left+500*i.velocityX,e=i.contentLastPos.top+500*i.velocityY),o=i.limitPosition(t,e,i.contentStartPos.width,i.contentStartPos.height),o.width=i.contentStartPos.width,o.height=i.contentStartPos.height,n.fancybox.animate(i.$content,o,366))},d.prototype.endZooming=function(){var t,e,o,i,a=this,s=a.instance.current,r=a.newWidth,c=a.newHeight;a.contentLastPos&&(t=a.contentLastPos.left,e=a.contentLastPos.top,i={top:e,left:t,width:r,height:c,scaleX:1,scaleY:1},n.fancybox.setTranslate(a.$content,i),rs.width||c>s.height?a.instance.scaleToActual(a.centerPointStartX,a.centerPointStartY,150):(o=a.limitPosition(t,e,r,c),n.fancybox.animate(a.$content,o,150)))},d.prototype.onTap=function(e){var o,i=this,s=n(e.target),r=i.instance,c=r.current,l=e&&a(e)||i.startPoints,d=l[0]?l[0].x-n(t).scrollLeft()-i.stagePos.left:0,u=l[0]?l[0].y-n(t).scrollTop()-i.stagePos.top:0,f=function(t){var o=c.opts[t];if(n.isFunction(o)&&(o=o.apply(r,[c,e])),o)switch(o){case"close":r.close(i.startEvent);break;case"toggleControls":r.toggleControls();break;case"next":r.next();break;case"nextOrClose":r.group.length>1?r.next():r.close(i.startEvent);break;case"zoom":"image"==c.type&&(c.isLoaded||c.$ghost)&&(r.canPan()?r.scaleToFit():r.isScaledDown()?r.scaleToActual(d,u):r.group.length<2&&r.close(i.startEvent))}};if((!e.originalEvent||2!=e.originalEvent.button)&&(s.is("img")||!(d>s[0].clientWidth+s.offset().left))){if(s.is(".fancybox-bg,.fancybox-inner,.fancybox-outer,.fancybox-container"))o="Outside";else if(s.is(".fancybox-slide"))o="Slide";else{if(!r.current.$content||!r.current.$content.find(s).addBack().filter(s).length)return;o="Content"}if(i.tapped){if(clearTimeout(i.tapped),i.tapped=null,Math.abs(d-i.tapX)>50||Math.abs(u-i.tapY)>50)return this;f("dblclick"+o)}else i.tapX=d,i.tapY=u,c.opts["dblclick"+o]&&c.opts["dblclick"+o]!==c.opts["click"+o]?i.tapped=setTimeout(function(){i.tapped=null,r.isAnimating||f("click"+o)},500):f("click"+o);return this}},n(e).on("onActivate.fb",function(t,e){e&&!e.Guestures&&(e.Guestures=new d(e))}).on("beforeClose.fb",function(t,e){e&&e.Guestures&&e.Guestures.destroy()})}(window,document,jQuery),function(t,e){"use strict";e.extend(!0,e.fancybox.defaults,{btnTpl:{slideShow:''},slideShow:{autoStart:!1,speed:3e3,progress:!0}});var n=function(t){this.instance=t,this.init()};e.extend(n.prototype,{timer:null,isActive:!1,$button:null,init:function(){var t=this,n=t.instance,o=n.group[n.currIndex].opts.slideShow;t.$button=n.$refs.toolbar.find("[data-fancybox-play]").on("click",function(){t.toggle()}),n.group.length<2||!o?t.$button.hide():o.progress&&(t.$progress=e('
    ').appendTo(n.$refs.inner))},set:function(t){var n=this,o=n.instance,i=o.current;i&&(!0===t||i.opts.loop||o.currIndex'},fullScreen:{autoStart:!1}}),e(t).on(n.fullscreenchange,function(){var t=o.isFullscreen(),n=e.fancybox.getInstance();n&&(n.current&&"image"===n.current.type&&n.isAnimating&&(n.isAnimating=!1,n.update(!0,!0,0),n.isComplete||n.complete()),n.trigger("onFullscreenChange",t),n.$refs.container.toggleClass("fancybox-is-fullscreen",t),n.$refs.toolbar.find("[data-fancybox-fullscreen]").toggleClass("fancybox-button--fsenter",!t).toggleClass("fancybox-button--fsexit",t))})}e(t).on({"onInit.fb":function(t,e){var i;if(!n)return void e.$refs.toolbar.find("[data-fancybox-fullscreen]").remove();e&&e.group[e.currIndex].opts.fullScreen?(i=e.$refs.container,i.on("click.fb-fullscreen","[data-fancybox-fullscreen]",function(t){t.stopPropagation(),t.preventDefault(),o.toggle()}),e.opts.fullScreen&&!0===e.opts.fullScreen.autoStart&&o.request(),e.FullScreen=o):e&&e.$refs.toolbar.find("[data-fancybox-fullscreen]").hide()},"afterKeydown.fb":function(t,e,n,o,i){e&&e.FullScreen&&70===i&&(o.preventDefault(),e.FullScreen.toggle())},"beforeClose.fb":function(t,e){e&&e.FullScreen&&e.$refs.container.hasClass("fancybox-is-fullscreen")&&o.exit()}})}(document,jQuery),function(t,e){"use strict";var n="fancybox-thumbs";e.fancybox.defaults=e.extend(!0,{btnTpl:{thumbs:''},thumbs:{autoStart:!1,hideOnClose:!0,parentEl:".fancybox-container",axis:"y"}},e.fancybox.defaults);var o=function(t){this.init(t)};e.extend(o.prototype,{$button:null,$grid:null,$list:null,isVisible:!1,isActive:!1,init:function(t){var e=this,n=t.group,o=0;e.instance=t,e.opts=n[t.currIndex].opts.thumbs,t.Thumbs=e,e.$button=t.$refs.toolbar.find("[data-fancybox-thumbs]");for(var i=0,a=n.length;i1));i++);o>1&&e.opts?(e.$button.removeAttr("style").on("click",function(){e.toggle()}),e.isActive=!0):e.$button.hide()},create:function(){var t,o=this,i=o.instance,a=o.opts.parentEl,s=[];o.$grid||(o.$grid=e('
    ').appendTo(i.$refs.container.find(a).addBack().filter(a)),o.$grid.on("click","a",function(){i.jumpTo(e(this).attr("data-index"))})),o.$list||(o.$list=e('
    ').appendTo(o.$grid)),e.each(i.group,function(e,n){t=n.thumb,t||"image"!==n.type||(t=n.src),s.push('")}),o.$list[0].innerHTML=s.join(""),"x"===o.opts.axis&&o.$list.width(parseInt(o.$grid.css("padding-right"),10)+i.group.length*o.$list.children().eq(0).outerWidth(!0))},focus:function(t){var e,n,o=this,i=o.$list,a=o.$grid;o.instance.current&&(e=i.children().removeClass("fancybox-thumbs-active").filter('[data-index="'+o.instance.current.index+'"]').addClass("fancybox-thumbs-active"),n=e.position(),"y"===o.opts.axis&&(n.top<0||n.top>i.height()-e.outerHeight())?i.stop().animate({scrollTop:i.scrollTop()+n.top},t):"x"===o.opts.axis&&(n.lefta.scrollLeft()+(a.width()-e.outerWidth()))&&i.parent().stop().animate({scrollLeft:n.left},t))},update:function(){var t=this;t.instance.$refs.container.toggleClass("fancybox-show-thumbs",this.isVisible),t.isVisible?(t.$grid||t.create(),t.instance.trigger("onThumbsShow"),t.focus(0)):t.$grid&&t.instance.trigger("onThumbsHide"),t.instance.update()},hide:function(){this.isVisible=!1,this.update()},show:function(){this.isVisible=!0,this.update()},toggle:function(){this.isVisible=!this.isVisible,this.update()}}),e(t).on({"onInit.fb":function(t,e){var n;e&&!e.Thumbs&&(n=new o(e),n.isActive&&!0===n.opts.autoStart&&n.show())},"beforeShow.fb":function(t,e,n,o){var i=e&&e.Thumbs;i&&i.isVisible&&i.focus(o?0:250)},"afterKeydown.fb":function(t,e,n,o,i){var a=e&&e.Thumbs;a&&a.isActive&&71===i&&(o.preventDefault(),a.toggle())},"beforeClose.fb":function(t,e){var n=e&&e.Thumbs;n&&n.isVisible&&!1!==n.opts.hideOnClose&&n.$grid.hide()}})}(document,jQuery),function(t,e){"use strict";function n(t){var e={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};return String(t).replace(/[&<>"'`=\/]/g,function(t){return e[t]})}e.extend(!0,e.fancybox.defaults,{btnTpl:{share:''},share:{url:function(t,e){return!t.currentHash&&"inline"!==e.type&&"html"!==e.type&&(e.origSrc||e.src)||window.location}, tpl:''}}),e(t).on("click","[data-fancybox-share]",function(){var t,o,i=e.fancybox.getInstance(),a=i.current||null;a&&("function"===e.type(a.opts.share.url)&&(t=a.opts.share.url.apply(a,[i,a])),o=a.opts.share.tpl.replace(/\{\{media\}\}/g,"image"===a.type?encodeURIComponent(a.src):"").replace(/\{\{url\}\}/g,encodeURIComponent(t)).replace(/\{\{url_raw\}\}/g,n(t)).replace(/\{\{descr\}\}/g,i.$caption?encodeURIComponent(i.$caption.text()):""),e.fancybox.open({src:i.translate(i,o),type:"html",opts:{touch:!1,animationEffect:!1,afterLoad:function(t,e){i.$refs.container.one("beforeClose.fb",function(){t.close(null,0)}),e.$content.find(".fancybox-share__button").click(function(){return window.open(this.href,"Share","width=550, height=450"),!1})},mobile:{autoFocus:!1}}}))})}(document,jQuery),function(t,e,n){"use strict";function o(){var e=t.location.hash.substr(1),n=e.split("-"),o=n.length>1&&/^\+?\d+$/.test(n[n.length-1])?parseInt(n.pop(-1),10)||1:1,i=n.join("-");return{hash:e,index:o<1?1:o,gallery:i}}function i(t){""!==t.gallery&&n("[data-fancybox='"+n.escapeSelector(t.gallery)+"']").eq(t.index-1).focus().trigger("click.fb-start")}function a(t){var e,n;return!!t&&(e=t.current?t.current.opts:t.opts,""!==(n=e.hash||(e.$orig?e.$orig.data("fancybox")||e.$orig.data("fancybox-trigger"):""))&&n)}n.escapeSelector||(n.escapeSelector=function(t){return(t+"").replace(/([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t})}),n(function(){!1!==n.fancybox.defaults.hash&&(n(e).on({"onInit.fb":function(t,e){var n,i;!1!==e.group[e.currIndex].opts.hash&&(n=o(),(i=a(e))&&n.gallery&&i==n.gallery&&(e.currIndex=n.index-1))},"beforeShow.fb":function(n,o,i,s){var r;i&&!1!==i.opts.hash&&(r=a(o))&&(o.currentHash=r+(o.group.length>1?"-"+(i.index+1):""),t.location.hash!=="#"+o.currentHash&&(s&&!o.origHash&&(o.origHash=t.location.hash),o.hashTimer&&clearTimeout(o.hashTimer),o.hashTimer=setTimeout(function(){"replaceState"in t.history?(t.history[s?"pushState":"replaceState"]({},e.title,t.location.pathname+t.location.search+"#"+o.currentHash),s&&(o.hasCreatedHistory=!0)):t.location.hash=o.currentHash,o.hashTimer=null},300)))},"beforeClose.fb":function(n,o,i){i&&!1!==i.opts.hash&&(clearTimeout(o.hashTimer),o.currentHash&&o.hasCreatedHistory?t.history.back():o.currentHash&&("replaceState"in t.history?t.history.replaceState({},e.title,t.location.pathname+t.location.search+(o.origHash||"")):t.location.hash=o.origHash),o.currentHash=null)}}),n(t).on("hashchange.fb",function(){var t=o(),e=null;n.each(n(".fancybox-container").get().reverse(),function(t,o){var i=n(o).data("FancyBox");if(i&&i.currentHash)return e=i,!1}),e?e.currentHash===t.gallery+"-"+t.index||1===t.index&&e.currentHash==t.gallery||(e.currentHash=null,e.close()):""!==t.gallery&&i(t)}),setTimeout(function(){n.fancybox.getInstance()||i(o())},50))})}(window,document,jQuery),function(t,e){"use strict";var n=(new Date).getTime();e(t).on({"onInit.fb":function(t,e,o){e.$refs.stage.on("mousewheel DOMMouseScroll wheel MozMousePixelScroll",function(t){var o=e.current,i=(new Date).getTime();e.group.length<2||!1===o.opts.wheel||"auto"===o.opts.wheel&&"image"!==o.type||(t.preventDefault(),t.stopPropagation(),o.$slide.hasClass("fancybox-animated")||(t=t.originalEvent||t,i-n<250||(n=i,e[(-t.deltaY||-t.deltaX||t.wheelDelta||-t.detail)<0?"next":"previous"]())))})}})}(document,jQuery); (function(d){var m="left",l="right",c="up",s="down",b="in",t="out",j="none",o="auto",i="swipe",p="pinch",u="tap",x="horizontal",q="vertical",g="all",e="start",h="move",f="end",n="cancel",a="ontouchstart" in window,v="TouchSwipe";var k={fingers:1,threshold:75,cancelThreshold:25,pinchThreshold:20,maxTimeThreshold:null,fingerReleaseThreshold:250,swipe:null,swipeLeft:null,swipeRight:null,swipeUp:null,swipeDown:null,swipeStatus:null,pinchIn:null,pinchOut:null,pinchStatus:null,click:null,tap:null,triggerOnTouchEnd:true,triggerOnTouchLeave:false,allowPageScroll:"auto",fallbackToMouseEvents:true,excludedElements:"button, input, select, textarea, a, .noSwipe"};d.fn.swipe=function(A){var z=d(this),y=z.data(v);if(y&&typeof A==="string"){if(y[A]){return y[A].apply(this,Array.prototype.slice.call(arguments,1))}else{d.error("Method "+A+" does not exist on jQuery.swipe")}}else{if(!y&&(typeof A==="object"||!A)){return r.apply(this,arguments)}}return z};d.fn.swipe.defaults=k;d.fn.swipe.phases={PHASE_START:e,PHASE_MOVE:h,PHASE_END:f,PHASE_CANCEL:n};d.fn.swipe.directions={LEFT:m,RIGHT:l,UP:c,DOWN:s,IN:b,OUT:t};d.fn.swipe.pageScroll={NONE:j,HORIZONTAL:x,VERTICAL:q,AUTO:o};d.fn.swipe.fingers={ONE:1,TWO:2,THREE:3,ALL:g};function r(y){if(y&&(y.allowPageScroll===undefined&&(y.swipe!==undefined||y.swipeStatus!==undefined))){y.allowPageScroll=j}if(y.click!==undefined&&y.tap===undefined){y.tap=y.click}if(!y){y={}}y=d.extend({},d.fn.swipe.defaults,y);return this.each(function(){var A=d(this);var z=A.data(v);if(!z){z=new w(this,y);A.data(v,z)}})}function w(S,ag){var aJ=(a||!ag.fallbackToMouseEvents),az=aJ?"touchstart":"mousedown",U=aJ?"touchmove":"mousemove",av=aJ?"touchend":"mouseup",D=aJ?null:"mouseleave",R="touchcancel";var ad=0,N=null,ah=0,aF=0,A=0,aj=1,aA=0,aN=0,Z=null;var H=d(S);var O="start";var aI=0;var ai=null;var I=0,Y=0,aD=0,aP=0;try{H.bind(az,at);H.bind(R,L)}catch(aG){d.error("events not supported "+az+","+R+" on jQuery.swipe")}this.enable=function(){H.bind(az,at);H.bind(R,L);return H};this.disable=function(){Q();return H};this.destroy=function(){Q();H.data(v,null);return H};this.option=function(aR,aQ){if(ag[aR]!==undefined){if(aQ===undefined){return ag[aR]}else{ag[aR]=aQ}}else{d.error("Option "+aR+" does not exist on jQuery.swipe.options")}};function at(aS){if(X()){return}if(d(aS.target).closest(ag.excludedElements,H).length>0){return}var aT=aS.originalEvent?aS.originalEvent:aS;var aR,aQ=a?aT.touches[0]:aT;O=e;if(a){aI=aT.touches.length}else{aS.preventDefault()}ad=0;N=null;aN=null;ah=0;aF=0;A=0;aj=1;aA=0;ai=T();Z=aE();z();if(!a||(aI===ag.fingers||ag.fingers===g)||ap()){aO(0,aQ);I=B();if(aI==2){aO(1,aT.touches[1]);aF=A=aa(ai[0].start,ai[1].start)}if(ag.swipeStatus||ag.pinchStatus){aR=aH(aT,O)}}else{aR=false}if(aR===false){O=n;aH(aT,O);return aR}else{ak(true)}}function P(aT){var aW=aT.originalEvent?aT.originalEvent:aT;if(O===f||O===n||af()){return}var aS,aR=a?aW.touches[0]:aW;var aU=V(aR);Y=B();if(a){aI=aW.touches.length}O=h;if(aI==2){if(aF==0){aO(1,aW.touches[1]);aF=A=aa(ai[0].start,ai[1].start)}else{V(aW.touches[1]);A=aa(ai[0].end,ai[1].end);aN=ao(ai[0].end,ai[1].end)}aj=y(aF,A);aA=Math.abs(aF-A)}if((aI===ag.fingers||ag.fingers===g)||!a||ap()){N=ar(aU.start,aU.end);C(aT,N);ad=G(aU.start,aU.end);ah=K();aK(N,ad);if(ag.swipeStatus||ag.pinchStatus){aS=aH(aW,O)}if(!ag.triggerOnTouchEnd||ag.triggerOnTouchLeave){var aQ=true;if(ag.triggerOnTouchLeave){var aV=au(this);aQ=aC(aU.end,aV)}if(!ag.triggerOnTouchEnd&&aQ){O=aM(h)}else{if(ag.triggerOnTouchLeave&&!aQ){O=aM(f)}}if(O==n||O==f){aH(aW,O)}}}else{O=n;aH(aW,O)}if(aS===false){O=n;aH(aW,O)}}function ab(aS){var aU=aS.originalEvent;if(a){if(aU.touches.length>0){aw();return true}}if(af()){aI=aP}aS.preventDefault();Y=B();if(ag.triggerOnTouchEnd||(ag.triggerOnTouchEnd==false&&O===h)){O=f;var aR=((aI===ag.fingers||ag.fingers===g)||!a);var aQ=ai[0].end.x!==0;var aT=aR&&aQ&&(an()||aB());if(aT){aH(aU,O)}else{O=n;aH(aU,O)}}else{if(!ag.triggerOnTouchEnd&&ay()){O=f;am(aU,O,u)}else{if(O===h){O=n;aH(aU,O)}}}ak(false)}function L(){aI=0;Y=0;I=0;aF=0;A=0;aj=1;z();ak(false)}function W(aQ){var aR=aQ.originalEvent;if(ag.triggerOnTouchLeave){O=aM(f);aH(aR,O)}}function Q(){H.unbind(az,at);H.unbind(R,L);H.unbind(U,P);H.unbind(av,ab);if(D){H.unbind(D,W)}ak(false)}function aM(aT){var aS=aT;var aR=aq();var aQ=ae();if(!aR){aS=n}else{if(aQ&&aT==h&&(!ag.triggerOnTouchEnd||ag.triggerOnTouchLeave)){aS=f}else{if(!aQ&&aT==f&&ag.triggerOnTouchLeave){aS=n}}}return aS}function aH(aS,aQ){var aR=undefined;if(ac()){aR=am(aS,aQ,i)}if(ap()&&aR!==false){aR=am(aS,aQ,p)}if(ay()&&aR!==false){aR=am(aS,aQ,u)}if(aQ===n){L(aS)}if(aQ===f){if(a){if(aS.touches.length==0){L(aS)}}else{L(aS)}}return aR}function am(aT,aQ,aS){var aR=undefined;if(aS==i){H.trigger("swipeStatus",[aQ,N||null,ad||0,ah||0,aI]);if(ag.swipeStatus){aR=ag.swipeStatus.call(H,aT,aQ,N||null,ad||0,ah||0,aI);if(aR===false){return false}}if(aQ==f&&aB()){H.trigger("swipe",[N,ad,ah,aI]);if(ag.swipe){aR=ag.swipe.call(H,aT,N,ad,ah,aI);if(aR===false){return false}}switch(N){case m:H.trigger("swipeLeft",[N,ad,ah,aI]);if(ag.swipeLeft){aR=ag.swipeLeft.call(H,aT,N,ad,ah,aI)}break;case l:H.trigger("swipeRight",[N,ad,ah,aI]);if(ag.swipeRight){aR=ag.swipeRight.call(H,aT,N,ad,ah,aI)}break;case c:H.trigger("swipeUp",[N,ad,ah,aI]);if(ag.swipeUp){aR=ag.swipeUp.call(H,aT,N,ad,ah,aI)}break;case s:H.trigger("swipeDown",[N,ad,ah,aI]);if(ag.swipeDown){aR=ag.swipeDown.call(H,aT,N,ad,ah,aI)}break}}}if(aS==p){H.trigger("pinchStatus",[aQ,aN||null,aA||0,ah||0,aI,aj]);if(ag.pinchStatus){aR=ag.pinchStatus.call(H,aT,aQ,aN||null,aA||0,ah||0,aI,aj);if(aR===false){return false}}if(aQ==f&&an()){switch(aN){case b:H.trigger("pinchIn",[aN||null,aA||0,ah||0,aI,aj]);if(ag.pinchIn){aR=ag.pinchIn.call(H,aT,aN||null,aA||0,ah||0,aI,aj)}break;case t:H.trigger("pinchOut",[aN||null,aA||0,ah||0,aI,aj]);if(ag.pinchOut){aR=ag.pinchOut.call(H,aT,aN||null,aA||0,ah||0,aI,aj)}break}}}if(aS==u){if(aQ===n||aQ===f){if((aI===1||!a)&&(isNaN(ad)||ad===0)){H.trigger("tap",[aT.target]);if(ag.tap){aR=ag.tap.call(H,aT,aT.target)}}}}return aR}function ae(){var aQ=true;if(ag.threshold!==null){aQ=ad>=ag.threshold}if(aQ&&ag.cancelThreshold!==null){aQ=(M(N)-ad)=ag.pinchThreshold}return true}function aq(){var aQ;if(ag.maxTimeThreshold){if(ah>=ag.maxTimeThreshold){aQ=false}else{aQ=true}}else{aQ=true}return aQ}function C(aQ,aR){if(ag.allowPageScroll===j||ap()){aQ.preventDefault()}else{var aS=ag.allowPageScroll===o;switch(aR){case m:if((ag.swipeLeft&&aS)||(!aS&&ag.allowPageScroll!=x)){aQ.preventDefault()}break;case l:if((ag.swipeRight&&aS)||(!aS&&ag.allowPageScroll!=x)){aQ.preventDefault()}break;case c:if((ag.swipeUp&&aS)||(!aS&&ag.allowPageScroll!=q)){aQ.preventDefault()}break;case s:if((ag.swipeDown&&aS)||(!aS&&ag.allowPageScroll!=q)){aQ.preventDefault()}break}}}function an(){return al()}function ap(){return !!(ag.pinchStatus||ag.pinchIn||ag.pinchOut)}function ax(){return !!(an()&&ap())}function aB(){var aQ=aq();var aS=ae();var aR=aS&&aQ;return aR}function ac(){return !!(ag.swipe||ag.swipeStatus||ag.swipeLeft||ag.swipeRight||ag.swipeUp||ag.swipeDown)}function E(){return !!(aB()&&ac())}function ay(){return !!(ag.tap)}function aw(){aD=B();aP=event.touches.length+1}function z(){aD=0;aP=0}function af(){var aQ=false;if(aD){var aR=B()-aD;if(aR<=ag.fingerReleaseThreshold){aQ=true}}return aQ}function X(){return !!(H.data(v+"_intouch")===true)}function ak(aQ){if(aQ===true){H.bind(U,P);H.bind(av,ab);if(D){H.bind(D,W)}}else{H.unbind(U,P,false);H.unbind(av,ab,false);if(D){H.unbind(D,W,false)}}H.data(v+"_intouch",aQ===true)}function aO(aR,aQ){var aS=aQ.identifier!==undefined?aQ.identifier:0;ai[aR].identifier=aS;ai[aR].start.x=ai[aR].end.x=aQ.pageX||aQ.clientX;ai[aR].start.y=ai[aR].end.y=aQ.pageY||aQ.clientY;return ai[aR]}function V(aQ){var aS=aQ.identifier!==undefined?aQ.identifier:0;var aR=J(aS);aR.end.x=aQ.pageX||aQ.clientX;aR.end.y=aQ.pageY||aQ.clientY;return aR}function J(aR){for(var aQ=0;aQ=0)){return m}else{if((aS<=360)&&(aS>=315)){return m}else{if((aS>=135)&&(aS<=225)){return l}else{if((aS>45)&&(aS<135)){return s}else{return c}}}}}function B(){var aQ=new Date();return aQ.getTime()}function au(aQ){aQ=d(aQ);var aS=aQ.offset();var aR={left:aS.left,right:aS.left+aQ.outerWidth(),top:aS.top,bottom:aS.top+aQ.outerHeight()};return aR}function aC(aQ,aR){return(aQ.x>aR.left&&aQ.xaR.top&&aQ.yc;c++){var e=a.anims[c];e&&e[0][b.transition](e[1],a.duration,a.easing,e[2])}}function sc_stopScroll(a,b){is_boolean(b)||(b=!0),is_object(a.pre)&&sc_stopScroll(a.pre,b);for(var c=0,d=a.anims.length;d>c;c++){var e=a.anims[c];e[0].stop(!0),b&&(e[0].css(e[1]),is_function(e[2])&&e[2]())}is_object(a.post)&&sc_stopScroll(a.post,b)}function sc_afterScroll(a,b,c){switch(b&&b.remove(),c.fx){case"fade":case"crossfade":case"cover-fade":case"uncover-fade":a.css("opacity",1),a.css("filter","")}}function sc_fireCallbacks(a,b,c,d,e){if(b[c]&&b[c].call(a,d),e[c].length)for(var f=0,g=e[c].length;g>f;f++)e[c][f].call(a,d);return[]}function sc_fireQueue(a,b,c){return b.length&&(a.trigger(cf_e(b[0][0],c),b[0][1]),b.shift()),b}function sc_hideHiddenItems(a){a.each(function(){var a=$(this);a.data("_cfs_isHidden",a.is(":hidden")).hide()})}function sc_showHiddenItems(a){a&&a.each(function(){var a=$(this);a.data("_cfs_isHidden")||a.show()})}function sc_clearTimers(a){return a.auto&&clearTimeout(a.auto),a.progress&&clearInterval(a.progress),a}function sc_mapCallbackArguments(a,b,c,d,e,f,g){return{width:g.width,height:g.height,items:{old:a,skipped:b,visible:c},scroll:{items:d,direction:e,duration:f}}}function sc_getDuration(a,b,c,d){var e=a.duration;return"none"==a.fx?0:("auto"==e?e=b.scroll.duration/b.scroll.items*c:10>e&&(e=d/e),1>e?0:("fade"==a.fx&&(e/=2),Math.round(e)))}function nv_showNavi(a,b,c){var d=is_number(a.items.minimum)?a.items.minimum:a.items.visible+1;if("show"==b||"hide"==b)var e=b;else if(d>b){debug(c,"Not enough items ("+b+" total, "+d+" needed): Hiding navigation.");var e="hide"}else var e="show";var f="show"==e?"removeClass":"addClass",g=cf_c("hidden",c);a.auto.button&&a.auto.button[e]()[f](g),a.prev.button&&a.prev.button[e]()[f](g),a.next.button&&a.next.button[e]()[f](g),a.pagination.container&&a.pagination.container[e]()[f](g)}function nv_enableNavi(a,b,c){if(!a.circular&&!a.infinite){var d="removeClass"==b||"addClass"==b?b:!1,e=cf_c("disabled",c);if(a.auto.button&&d&&a.auto.button[d](e),a.prev.button){var f=d||0==b?"addClass":"removeClass";a.prev.button[f](e)}if(a.next.button){var f=d||b==a.items.visible?"addClass":"removeClass";a.next.button[f](e)}}}function go_getObject(a,b){return is_function(b)?b=b.call(a):is_undefined(b)&&(b={}),b}function go_getItemsObject(a,b){return b=go_getObject(a,b),is_number(b)?b={visible:b}:"variable"==b?b={visible:b,width:b,height:b}:is_object(b)||(b={}),b}function go_getScrollObject(a,b){return b=go_getObject(a,b),is_number(b)?b=50>=b?{items:b}:{duration:b}:is_string(b)?b={easing:b}:is_object(b)||(b={}),b}function go_getNaviObject(a,b){if(b=go_getObject(a,b),is_string(b)){var c=cf_getKeyCode(b);b=-1==c?$(b):c}return b}function go_getAutoObject(a,b){return b=go_getNaviObject(a,b),is_jquery(b)?b={button:b}:is_boolean(b)?b={play:b}:is_number(b)&&(b={timeoutDuration:b}),b.progress&&(is_string(b.progress)||is_jquery(b.progress))&&(b.progress={bar:b.progress}),b}function go_complementAutoObject(a,b){return is_function(b.button)&&(b.button=b.button.call(a)),is_string(b.button)&&(b.button=$(b.button)),is_boolean(b.play)||(b.play=!0),is_number(b.delay)||(b.delay=0),is_undefined(b.pauseOnEvent)&&(b.pauseOnEvent=!0),is_boolean(b.pauseOnResize)||(b.pauseOnResize=!0),is_number(b.timeoutDuration)||(b.timeoutDuration=10>b.duration?2500:5*b.duration),b.progress&&(is_function(b.progress.bar)&&(b.progress.bar=b.progress.bar.call(a)),is_string(b.progress.bar)&&(b.progress.bar=$(b.progress.bar)),b.progress.bar?(is_function(b.progress.updater)||(b.progress.updater=$.fn.carouFredSel.progressbarUpdater),is_number(b.progress.interval)||(b.progress.interval=50)):b.progress=!1),b}function go_getPrevNextObject(a,b){return b=go_getNaviObject(a,b),is_jquery(b)?b={button:b}:is_number(b)&&(b={key:b}),b}function go_complementPrevNextObject(a,b){return is_function(b.button)&&(b.button=b.button.call(a)),is_string(b.button)&&(b.button=$(b.button)),is_string(b.key)&&(b.key=cf_getKeyCode(b.key)),b}function go_getPaginationObject(a,b){return b=go_getNaviObject(a,b),is_jquery(b)?b={container:b}:is_boolean(b)&&(b={keys:b}),b}function go_complementPaginationObject(a,b){return is_function(b.container)&&(b.container=b.container.call(a)),is_string(b.container)&&(b.container=$(b.container)),is_number(b.items)||(b.items=!1),is_boolean(b.keys)||(b.keys=!1),is_function(b.anchorBuilder)||is_false(b.anchorBuilder)||(b.anchorBuilder=$.fn.carouFredSel.pageAnchorBuilder),is_number(b.deviation)||(b.deviation=0),b}function go_getSwipeObject(a,b){return is_function(b)&&(b=b.call(a)),is_undefined(b)&&(b={onTouch:!1}),is_true(b)?b={onTouch:b}:is_number(b)&&(b={items:b}),b}function go_complementSwipeObject(a,b){return is_boolean(b.onTouch)||(b.onTouch=!0),is_boolean(b.onMouse)||(b.onMouse=!1),is_object(b.options)||(b.options={}),is_boolean(b.options.triggerOnTouchEnd)||(b.options.triggerOnTouchEnd=!1),b}function go_getMousewheelObject(a,b){return is_function(b)&&(b=b.call(a)),is_true(b)?b={}:is_number(b)?b={items:b}:is_undefined(b)&&(b=!1),b}function go_complementMousewheelObject(a,b){return b}function gn_getItemIndex(a,b,c,d,e){if(is_string(a)&&(a=$(a,e)),is_object(a)&&(a=$(a,e)),is_jquery(a)?(a=e.children().index(a),is_boolean(c)||(c=!1)):is_boolean(c)||(c=!0),is_number(a)||(a=0),is_number(b)||(b=0),c&&(a+=d.first),a+=b,d.total>0){for(;a>=d.total;)a-=d.total;for(;0>a;)a+=d.total}return a}function gn_getVisibleItemsPrev(a,b,c){for(var d=0,e=0,f=c;f>=0;f--){var g=a.eq(f);if(d+=g.is(":visible")?g[b.d.outerWidth](!0):0,d>b.maxDimension)return e;0==f&&(f=a.length),e++}}function gn_getVisibleItemsPrevFilter(a,b,c){return gn_getItemsPrevFilter(a,b.items.filter,b.items.visibleConf.org,c)}function gn_getScrollItemsPrevFilter(a,b,c,d){return gn_getItemsPrevFilter(a,b.items.filter,d,c)}function gn_getItemsPrevFilter(a,b,c,d){for(var e=0,f=0,g=d,h=a.length;g>=0;g--){if(f++,f==h)return f;var i=a.eq(g);if(i.is(b)&&(e++,e==c))return f;0==g&&(g=h)}}function gn_getVisibleOrg(a,b){return b.items.visibleConf.org||a.children().slice(0,b.items.visible).filter(b.items.filter).length}function gn_getVisibleItemsNext(a,b,c){for(var d=0,e=0,f=c,g=a.length-1;g>=f;f++){var h=a.eq(f);if(d+=h.is(":visible")?h[b.d.outerWidth](!0):0,d>b.maxDimension)return e;if(e++,e==g+1)return e;f==g&&(f=-1)}}function gn_getVisibleItemsNextTestCircular(a,b,c,d){var e=gn_getVisibleItemsNext(a,b,c);return b.circular||c+e>d&&(e=d-c),e}function gn_getVisibleItemsNextFilter(a,b,c){return gn_getItemsNextFilter(a,b.items.filter,b.items.visibleConf.org,c,b.circular)}function gn_getScrollItemsNextFilter(a,b,c,d){return gn_getItemsNextFilter(a,b.items.filter,d+1,c,b.circular)-1}function gn_getItemsNextFilter(a,b,c,d){for(var f=0,g=0,h=d,i=a.length-1;i>=h;h++){if(g++,g>=i)return g;var j=a.eq(h);if(j.is(b)&&(f++,f==c))return g;h==i&&(h=-1)}}function gi_getCurrentItems(a,b){return a.slice(0,b.items.visible)}function gi_getOldItemsPrev(a,b,c){return a.slice(c,b.items.visibleConf.old+c)}function gi_getNewItemsPrev(a,b){return a.slice(0,b.items.visible)}function gi_getOldItemsNext(a,b){return a.slice(0,b.items.visibleConf.old)}function gi_getNewItemsNext(a,b,c){return a.slice(c,b.items.visible+c)}function sz_storeMargin(a,b,c){b.usePadding&&(is_string(c)||(c="_cfs_origCssMargin"),a.each(function(){var a=$(this),d=parseInt(a.css(b.d.marginRight),10);is_number(d)||(d=0),a.data(c,d)}))}function sz_resetMargin(a,b,c){if(b.usePadding){var d=is_boolean(c)?c:!1;is_number(c)||(c=0),sz_storeMargin(a,b,"_cfs_tempCssMargin"),a.each(function(){var a=$(this);a.css(b.d.marginRight,d?a.data("_cfs_tempCssMargin"):c+a.data("_cfs_origCssMargin"))})}}function sz_storeOrigCss(a){a.each(function(){var a=$(this);a.data("_cfs_origCss",a.attr("style")||"")})}function sz_restoreOrigCss(a){a.each(function(){var a=$(this);a.attr("style",a.data("_cfs_origCss")||"")})}function sz_setResponsiveSizes(a,b){var d=(a.items.visible,a.items[a.d.width]),e=a[a.d.height],f=is_percentage(e);b.each(function(){var b=$(this),c=d-ms_getPaddingBorderMargin(b,a,"Width");b[a.d.width](c),f&&b[a.d.height](ms_getPercentage(c,e))})}function sz_setSizes(a,b){var c=a.parent(),d=a.children(),e=gi_getCurrentItems(d,b),f=cf_mapWrapperSizes(ms_getSizes(e,b,!0),b,!1);if(c.css(f),b.usePadding){var g=b.padding,h=g[b.d[1]];b.align&&0>h&&(h=0);var i=e.last();i.css(b.d.marginRight,i.data("_cfs_origCssMargin")+h),a.css(b.d.top,g[b.d[0]]),a.css(b.d.left,g[b.d[3]])}return a.css(b.d.width,f[b.d.width]+2*ms_getTotalSize(d,b,"width")),a.css(b.d.height,ms_getLargestSize(d,b,"height")),f}function ms_getSizes(a,b,c){return[ms_getTotalSize(a,b,"width",c),ms_getLargestSize(a,b,"height",c)]}function ms_getLargestSize(a,b,c,d){return is_boolean(d)||(d=!1),is_number(b[b.d[c]])&&d?b[b.d[c]]:is_number(b.items[b.d[c]])?b.items[b.d[c]]:(c=c.toLowerCase().indexOf("width")>-1?"outerWidth":"outerHeight",ms_getTrueLargestSize(a,b,c))}function ms_getTrueLargestSize(a,b,c){for(var d=0,e=0,f=a.length;f>e;e++){var g=a.eq(e),h=g.is(":visible")?g[b.d[c]](!0):0;h>d&&(d=h)}return d}function ms_getTotalSize(a,b,c,d){if(is_boolean(d)||(d=!1),is_number(b[b.d[c]])&&d)return b[b.d[c]];if(is_number(b.items[b.d[c]]))return b.items[b.d[c]]*a.length;for(var e=c.toLowerCase().indexOf("width")>-1?"outerWidth":"outerHeight",f=0,g=0,h=a.length;h>g;g++){var i=a.eq(g);f+=i.is(":visible")?i[b.d[e]](!0):0}return f}function ms_getParentSize(a,b,c){var d=a.is(":visible");d&&a.hide();var e=a.parent()[b.d[c]]();return d&&a.show(),e}function ms_getMaxDimension(a,b){return is_number(a[a.d.width])?a[a.d.width]:b}function ms_hasVariableSizes(a,b,c){for(var d=!1,e=!1,f=0,g=a.length;g>f;f++){var h=a.eq(f),i=h.is(":visible")?h[b.d[c]](!0):0;d===!1?d=i:d!=i&&(e=!0),0==d&&(e=!0)}return e}function ms_getPaddingBorderMargin(a,b,c){return a[b.d["outer"+c]](!0)-a[b.d[c.toLowerCase()]]()}function ms_getPercentage(a,b){if(is_percentage(b)){if(b=parseInt(b.slice(0,-1),10),!is_number(b))return a;a*=b/100}return a}function cf_e(a,b,c,d,e){return is_boolean(c)||(c=!0),is_boolean(d)||(d=!0),is_boolean(e)||(e=!1),c&&(a=b.events.prefix+a),d&&(a=a+"."+b.events.namespace),d&&e&&(a+=b.serialNumber),a}function cf_c(a,b){return is_string(b.classnames[a])?b.classnames[a]:a}function cf_mapWrapperSizes(a,b,c){is_boolean(c)||(c=!0);var d=b.usePadding&&c?b.padding:[0,0,0,0],e={};return e[b.d.width]=a[0]+d[1]+d[3],e[b.d.height]=a[1]+d[0]+d[2],e}function cf_sortParams(a,b){for(var c=[],d=0,e=a.length;e>d;d++)for(var f=0,g=b.length;g>f;f++)if(b[f].indexOf(typeof a[d])>-1&&is_undefined(c[f])){c[f]=a[d];break}return c}function cf_getPadding(a){if(is_undefined(a))return[0,0,0,0];if(is_number(a))return[a,a,a,a];if(is_string(a)&&(a=a.split("px").join("").split("em").join("").split(" ")),!is_array(a))return[0,0,0,0];for(var b=0;4>b;b++)a[b]=parseInt(a[b],10);switch(a.length){case 0:return[0,0,0,0];case 1:return[a[0],a[0],a[0],a[0]];case 2:return[a[0],a[1],a[0],a[1]];case 3:return[a[0],a[1],a[2],a[1]];default:return[a[0],a[1],a[2],a[3]]}}function cf_getAlignPadding(a,b){var c=is_number(b[b.d.width])?Math.ceil(b[b.d.width]-ms_getTotalSize(a,b,"width")):0;switch(b.align){case"left":return[0,c];case"right":return[c,0];case"center":default:return[Math.ceil(c/2),Math.floor(c/2)]}}function cf_getDimensions(a){for(var b=[["width","innerWidth","outerWidth","height","innerHeight","outerHeight","left","top","marginRight",0,1,2,3],["height","innerHeight","outerHeight","width","innerWidth","outerWidth","top","left","marginBottom",3,2,1,0]],c=b[0].length,d="right"==a.direction||"left"==a.direction?0:1,e={},f=0;c>f;f++)e[b[0][f]]=b[d][f];return e}function cf_getAdjust(a,b,c,d){var e=a;if(is_function(c))e=c.call(d,e);else if(is_string(c)){var f=c.split("+"),g=c.split("-");if(g.length>f.length)var h=!0,i=g[0],j=g[1];else var h=!1,i=f[0],j=f[1];switch(i){case"even":e=1==a%2?a-1:a;break;case"odd":e=0==a%2?a-1:a;break;default:e=a}j=parseInt(j,10),is_number(j)&&(h&&(j=-j),e+=j)}return(!is_number(e)||1>e)&&(e=1),e}function cf_getItemsAdjust(a,b,c,d){return cf_getItemAdjustMinMax(cf_getAdjust(a,b,c,d),b.items.visibleConf)}function cf_getItemAdjustMinMax(a,b){return is_number(b.min)&&b.min>a&&(a=b.min),is_number(b.max)&&a>b.max&&(a=b.max),1>a&&(a=1),a}function cf_getSynchArr(a){is_array(a)||(a=[[a]]),is_array(a[0])||(a=[a]);for(var b=0,c=a.length;c>b;b++)is_string(a[b][0])&&(a[b][0]=$(a[b][0])),is_boolean(a[b][1])||(a[b][1]=!0),is_boolean(a[b][2])||(a[b][2]=!0),is_number(a[b][3])||(a[b][3]=0);return a}function cf_getKeyCode(a){return"right"==a?39:"left"==a?37:"up"==a?38:"down"==a?40:-1}function cf_setCookie(a,b,c){if(a){var d=b.triggerHandler(cf_e("currentPosition",c));$.fn.carouFredSel.cookie.set(a,d)}}function cf_getCookie(a){var b=$.fn.carouFredSel.cookie.get(a);return""==b?0:b}function in_mapCss(a,b){for(var c={},d=0,e=b.length;e>d;d++)c[b[d]]=a.css(b[d]);return c}function in_complementItems(a,b,c,d){return is_object(a.visibleConf)||(a.visibleConf={}),is_object(a.sizesConf)||(a.sizesConf={}),0==a.start&&is_number(d)&&(a.start=d),is_object(a.visible)?(a.visibleConf.min=a.visible.min,a.visibleConf.max=a.visible.max,a.visible=!1):is_string(a.visible)?("variable"==a.visible?a.visibleConf.variable=!0:a.visibleConf.adjust=a.visible,a.visible=!1):is_function(a.visible)&&(a.visibleConf.adjust=a.visible,a.visible=!1),is_string(a.filter)||(a.filter=c.filter(":hidden").length>0?":visible":"*"),a[b.d.width]||(b.responsive?(debug(!0,"Set a "+b.d.width+" for the items!"),a[b.d.width]=ms_getTrueLargestSize(c,b,"outerWidth")):a[b.d.width]=ms_hasVariableSizes(c,b,"outerWidth")?"variable":c[b.d.outerWidth](!0)),a[b.d.height]||(a[b.d.height]=ms_hasVariableSizes(c,b,"outerHeight")?"variable":c[b.d.outerHeight](!0)),a.sizesConf.width=a.width,a.sizesConf.height=a.height,a}function in_complementVisibleItems(a,b){return"variable"==a.items[a.d.width]&&(a.items.visibleConf.variable=!0),a.items.visibleConf.variable||(is_number(a[a.d.width])?a.items.visible=Math.floor(a[a.d.width]/a.items[a.d.width]):(a.items.visible=Math.floor(b/a.items[a.d.width]),a[a.d.width]=a.items.visible*a.items[a.d.width],a.items.visibleConf.adjust||(a.align=!1)),("Infinity"==a.items.visible||1>a.items.visible)&&(debug(!0,'Not a valid number of visible items: Set to "variable".'),a.items.visibleConf.variable=!0)),a}function in_complementPrimarySize(a,b,c){return"auto"==a&&(a=ms_getTrueLargestSize(c,b,"outerWidth")),a}function in_complementSecondarySize(a,b,c){return"auto"==a&&(a=ms_getTrueLargestSize(c,b,"outerHeight")),a||(a=b.items[b.d.height]),a}function in_getAlignPadding(a,b){var c=cf_getAlignPadding(gi_getCurrentItems(b,a),a);return a.padding[a.d[1]]=c[1],a.padding[a.d[3]]=c[0],a}function in_getResponsiveValues(a,b){var d=cf_getItemAdjustMinMax(Math.ceil(a[a.d.width]/a.items[a.d.width]),a.items.visibleConf);d>b.length&&(d=b.length);var e=Math.floor(a[a.d.width]/d);return a.items.visible=d,a.items[a.d.width]=e,a[a.d.width]=d*e,a}function bt_pauseOnHoverConfig(a){if(is_string(a))var b=a.indexOf("immediate")>-1?!0:!1,c=a.indexOf("resume")>-1?!0:!1;else var b=c=!1;return[b,c]}function bt_mousesheelNumber(a){return is_number(a)?a:null}function is_null(a){return null===a}function is_undefined(a){return is_null(a)||a===void 0||""===a||"undefined"===a}function is_array(a){return a instanceof Array}function is_jquery(a){return a instanceof jQuery}function is_object(a){return(a instanceof Object||"object"==typeof a)&&!is_null(a)&&!is_jquery(a)&&!is_array(a)&&!is_function(a)}function is_number(a){return(a instanceof Number||"number"==typeof a)&&!isNaN(a)}function is_string(a){return(a instanceof String||"string"==typeof a)&&!is_undefined(a)&&!is_true(a)&&!is_false(a)}function is_function(a){return a instanceof Function||"function"==typeof a}function is_boolean(a){return a instanceof Boolean||"boolean"==typeof a||is_true(a)||is_false(a)}function is_true(a){return a===!0||"true"===a}function is_false(a){return a===!1||"false"===a}function is_percentage(a){return is_string(a)&&"%"==a.slice(-1)}function getTime(){return(new Date).getTime()}function deprecated(a,b){debug(!0,a+" is DEPRECATED, support for it will be removed. Use "+b+" instead.")}function debug(a,b){if(!is_undefined(window.console)&&!is_undefined(window.console.log)){if(is_object(a)){var c=" ("+a.selector+")";a=a.debug}else var c="";if(!a)return!1;b=is_string(b)?"carouFredSel"+c+": "+b:["carouFredSel"+c+":",b],window.console.log(b)}return!1}$.fn.carouFredSel||($.fn.caroufredsel=$.fn.carouFredSel=function(options,configs){if(0==this.length)return debug(!0,'No element found for "'+this.selector+'".'),this;if(this.length>1)return this.each(function(){$(this).carouFredSel(options,configs)});var $cfs=this,$tt0=this[0],starting_position=!1;$cfs.data("_cfs_isCarousel")&&(starting_position=$cfs.triggerHandler("_cfs_triggerEvent","currentPosition"),$cfs.trigger("_cfs_triggerEvent",["destroy",!0]));var FN={};FN._init=function(a,b,c){a=go_getObject($tt0,a),a.items=go_getItemsObject($tt0,a.items),a.scroll=go_getScrollObject($tt0,a.scroll),a.auto=go_getAutoObject($tt0,a.auto),a.prev=go_getPrevNextObject($tt0,a.prev),a.next=go_getPrevNextObject($tt0,a.next),a.pagination=go_getPaginationObject($tt0,a.pagination),a.swipe=go_getSwipeObject($tt0,a.swipe),a.mousewheel=go_getMousewheelObject($tt0,a.mousewheel),b&&(opts_orig=$.extend(!0,{},$.fn.carouFredSel.defaults,a)),opts=$.extend(!0,{},$.fn.carouFredSel.defaults,a),opts.d=cf_getDimensions(opts),crsl.direction="up"==opts.direction||"left"==opts.direction?"next":"prev";var d=$cfs.children(),e=ms_getParentSize($wrp,opts,"width");if(is_true(opts.cookie)&&(opts.cookie="caroufredsel_cookie_"+conf.serialNumber),opts.maxDimension=ms_getMaxDimension(opts,e),opts.items=in_complementItems(opts.items,opts,d,c),opts[opts.d.width]=in_complementPrimarySize(opts[opts.d.width],opts,d),opts[opts.d.height]=in_complementSecondarySize(opts[opts.d.height],opts,d),opts.responsive&&(is_percentage(opts[opts.d.width])||(opts[opts.d.width]="100%")),is_percentage(opts[opts.d.width])&&(crsl.upDateOnWindowResize=!0,crsl.primarySizePercentage=opts[opts.d.width],opts[opts.d.width]=ms_getPercentage(e,crsl.primarySizePercentage),opts.items.visible||(opts.items.visibleConf.variable=!0)),opts.responsive?(opts.usePadding=!1,opts.padding=[0,0,0,0],opts.align=!1,opts.items.visibleConf.variable=!1):(opts.items.visible||(opts=in_complementVisibleItems(opts,e)),opts[opts.d.width]||(!opts.items.visibleConf.variable&&is_number(opts.items[opts.d.width])&&"*"==opts.items.filter?(opts[opts.d.width]=opts.items.visible*opts.items[opts.d.width],opts.align=!1):opts[opts.d.width]="variable"),is_undefined(opts.align)&&(opts.align=is_number(opts[opts.d.width])?"center":!1),opts.items.visibleConf.variable&&(opts.items.visible=gn_getVisibleItemsNext(d,opts,0))),"*"==opts.items.filter||opts.items.visibleConf.variable||(opts.items.visibleConf.org=opts.items.visible,opts.items.visible=gn_getVisibleItemsNextFilter(d,opts,0)),opts.items.visible=cf_getItemsAdjust(opts.items.visible,opts,opts.items.visibleConf.adjust,$tt0),opts.items.visibleConf.old=opts.items.visible,opts.responsive)opts.items.visibleConf.min||(opts.items.visibleConf.min=opts.items.visible),opts.items.visibleConf.max||(opts.items.visibleConf.max=opts.items.visible),opts=in_getResponsiveValues(opts,d,e);else switch(opts.padding=cf_getPadding(opts.padding),"top"==opts.align?opts.align="left":"bottom"==opts.align&&(opts.align="right"),opts.align){case"center":case"left":case"right":"variable"!=opts[opts.d.width]&&(opts=in_getAlignPadding(opts,d),opts.usePadding=!0);break;default:opts.align=!1,opts.usePadding=0==opts.padding[0]&&0==opts.padding[1]&&0==opts.padding[2]&&0==opts.padding[3]?!1:!0}is_number(opts.scroll.duration)||(opts.scroll.duration=500),is_undefined(opts.scroll.items)&&(opts.scroll.items=opts.responsive||opts.items.visibleConf.variable||"*"!=opts.items.filter?"visible":opts.items.visible),opts.auto=$.extend(!0,{},opts.scroll,opts.auto),opts.prev=$.extend(!0,{},opts.scroll,opts.prev),opts.next=$.extend(!0,{},opts.scroll,opts.next),opts.pagination=$.extend(!0,{},opts.scroll,opts.pagination),opts.auto=go_complementAutoObject($tt0,opts.auto),opts.prev=go_complementPrevNextObject($tt0,opts.prev),opts.next=go_complementPrevNextObject($tt0,opts.next),opts.pagination=go_complementPaginationObject($tt0,opts.pagination),opts.swipe=go_complementSwipeObject($tt0,opts.swipe),opts.mousewheel=go_complementMousewheelObject($tt0,opts.mousewheel),opts.synchronise&&(opts.synchronise=cf_getSynchArr(opts.synchronise)),opts.auto.onPauseStart&&(opts.auto.onTimeoutStart=opts.auto.onPauseStart,deprecated("auto.onPauseStart","auto.onTimeoutStart")),opts.auto.onPausePause&&(opts.auto.onTimeoutPause=opts.auto.onPausePause,deprecated("auto.onPausePause","auto.onTimeoutPause")),opts.auto.onPauseEnd&&(opts.auto.onTimeoutEnd=opts.auto.onPauseEnd,deprecated("auto.onPauseEnd","auto.onTimeoutEnd")),opts.auto.pauseDuration&&(opts.auto.timeoutDuration=opts.auto.pauseDuration,deprecated("auto.pauseDuration","auto.timeoutDuration"))},FN._build=function(){$cfs.data("_cfs_isCarousel",!0);var a=$cfs.children(),b=in_mapCss($cfs,["textAlign","float","position","top","right","bottom","left","zIndex","width","height","marginTop","marginRight","marginBottom","marginLeft"]),c="relative";switch(b.position){case"absolute":case"fixed":c=b.position}"parent"==conf.wrapper?sz_storeOrigCss($wrp):$wrp.css(b),$wrp.css({overflow:"hidden",position:c}),sz_storeOrigCss($cfs),$cfs.data("_cfs_origCssZindex",b.zIndex),$cfs.css({textAlign:"left","float":"none",position:"absolute",top:0,right:"auto",bottom:"auto",left:0,marginTop:0,marginRight:0,marginBottom:0,marginLeft:0}),sz_storeMargin(a,opts),sz_storeOrigCss(a),opts.responsive&&sz_setResponsiveSizes(opts,a)},FN._bind_events=function(){FN._unbind_events(),$cfs.bind(cf_e("stop",conf),function(a,b){return a.stopPropagation(),crsl.isStopped||opts.auto.button&&opts.auto.button.addClass(cf_c("stopped",conf)),crsl.isStopped=!0,opts.auto.play&&(opts.auto.play=!1,$cfs.trigger(cf_e("pause",conf),b)),!0}),$cfs.bind(cf_e("finish",conf),function(a){return a.stopPropagation(),crsl.isScrolling&&sc_stopScroll(scrl),!0}),$cfs.bind(cf_e("pause",conf),function(a,b,c){if(a.stopPropagation(),tmrs=sc_clearTimers(tmrs),b&&crsl.isScrolling){scrl.isStopped=!0;var d=getTime()-scrl.startTime;scrl.duration-=d,scrl.pre&&(scrl.pre.duration-=d),scrl.post&&(scrl.post.duration-=d),sc_stopScroll(scrl,!1)}if(crsl.isPaused||crsl.isScrolling||c&&(tmrs.timePassed+=getTime()-tmrs.startTime),crsl.isPaused||opts.auto.button&&opts.auto.button.addClass(cf_c("paused",conf)),crsl.isPaused=!0,opts.auto.onTimeoutPause){var e=opts.auto.timeoutDuration-tmrs.timePassed,f=100-Math.ceil(100*e/opts.auto.timeoutDuration);opts.auto.onTimeoutPause.call($tt0,f,e)}return!0}),$cfs.bind(cf_e("play",conf),function(a,b,c,d){a.stopPropagation(),tmrs=sc_clearTimers(tmrs);var e=[b,c,d],f=["string","number","boolean"],g=cf_sortParams(e,f);if(b=g[0],c=g[1],d=g[2],"prev"!=b&&"next"!=b&&(b=crsl.direction),is_number(c)||(c=0),is_boolean(d)||(d=!1),d&&(crsl.isStopped=!1,opts.auto.play=!0),!opts.auto.play)return a.stopImmediatePropagation(),debug(conf,"Carousel stopped: Not scrolling.");crsl.isPaused&&opts.auto.button&&(opts.auto.button.removeClass(cf_c("stopped",conf)),opts.auto.button.removeClass(cf_c("paused",conf))),crsl.isPaused=!1,tmrs.startTime=getTime();var h=opts.auto.timeoutDuration+c;return dur2=h-tmrs.timePassed,perc=100-Math.ceil(100*dur2/h),opts.auto.progress&&(tmrs.progress=setInterval(function(){var a=getTime()-tmrs.startTime+tmrs.timePassed,b=Math.ceil(100*a/h);opts.auto.progress.updater.call(opts.auto.progress.bar[0],b)},opts.auto.progress.interval)),tmrs.auto=setTimeout(function(){opts.auto.progress&&opts.auto.progress.updater.call(opts.auto.progress.bar[0],100),opts.auto.onTimeoutEnd&&opts.auto.onTimeoutEnd.call($tt0,perc,dur2),crsl.isScrolling?$cfs.trigger(cf_e("play",conf),b):$cfs.trigger(cf_e(b,conf),opts.auto)},dur2),opts.auto.onTimeoutStart&&opts.auto.onTimeoutStart.call($tt0,perc,dur2),!0}),$cfs.bind(cf_e("resume",conf),function(a){return a.stopPropagation(),scrl.isStopped?(scrl.isStopped=!1,crsl.isPaused=!1,crsl.isScrolling=!0,scrl.startTime=getTime(),sc_startScroll(scrl,conf)):$cfs.trigger(cf_e("play",conf)),!0}),$cfs.bind(cf_e("prev",conf)+" "+cf_e("next",conf),function(a,b,c,d,e){if(a.stopPropagation(),crsl.isStopped||$cfs.is(":hidden"))return a.stopImmediatePropagation(),debug(conf,"Carousel stopped or hidden: Not scrolling.");var f=is_number(opts.items.minimum)?opts.items.minimum:opts.items.visible+1;if(f>itms.total)return a.stopImmediatePropagation(),debug(conf,"Not enough items ("+itms.total+" total, "+f+" needed): Not scrolling.");var g=[b,c,d,e],h=["object","number/string","function","boolean"],i=cf_sortParams(g,h);b=i[0],c=i[1],d=i[2],e=i[3];var j=a.type.slice(conf.events.prefix.length);if(is_object(b)||(b={}),is_function(d)&&(b.onAfter=d),is_boolean(e)&&(b.queue=e),b=$.extend(!0,{},opts[j],b),b.conditions&&!b.conditions.call($tt0,j))return a.stopImmediatePropagation(),debug(conf,'Callback "conditions" returned false.');if(!is_number(c)){if("*"!=opts.items.filter)c="visible";else for(var k=[c,b.items,opts[j].items],i=0,l=k.length;l>i;i++)if(is_number(k[i])||"page"==k[i]||"visible"==k[i]){c=k[i];break}switch(c){case"page":return a.stopImmediatePropagation(),$cfs.triggerHandler(cf_e(j+"Page",conf),[b,d]);case"visible":opts.items.visibleConf.variable||"*"!=opts.items.filter||(c=opts.items.visible)}}if(scrl.isStopped)return $cfs.trigger(cf_e("resume",conf)),$cfs.trigger(cf_e("queue",conf),[j,[b,c,d]]),a.stopImmediatePropagation(),debug(conf,"Carousel resumed scrolling.");if(b.duration>0&&crsl.isScrolling)return b.queue&&("last"==b.queue&&(queu=[]),("first"!=b.queue||0==queu.length)&&$cfs.trigger(cf_e("queue",conf),[j,[b,c,d]])),a.stopImmediatePropagation(),debug(conf,"Carousel currently scrolling.");if(tmrs.timePassed=0,$cfs.trigger(cf_e("slide_"+j,conf),[b,c]),opts.synchronise)for(var m=opts.synchronise,n=[b,c],o=0,l=m.length;l>o;o++){var p=j;m[o][2]||(p="prev"==p?"next":"prev"),m[o][1]||(n[0]=m[o][0].triggerHandler("_cfs_triggerEvent",["configuration",p])),n[1]=c+m[o][3],m[o][0].trigger("_cfs_triggerEvent",["slide_"+p,n])}return!0}),$cfs.bind(cf_e("slide_prev",conf),function(a,b,c){a.stopPropagation();var d=$cfs.children();if(!opts.circular&&0==itms.first)return opts.infinite&&$cfs.trigger(cf_e("next",conf),itms.total-1),a.stopImmediatePropagation();if(sz_resetMargin(d,opts),!is_number(c)){if(opts.items.visibleConf.variable)c=gn_getVisibleItemsPrev(d,opts,itms.total-1);else if("*"!=opts.items.filter){var e=is_number(b.items)?b.items:gn_getVisibleOrg($cfs,opts);c=gn_getScrollItemsPrevFilter(d,opts,itms.total-1,e)}else c=opts.items.visible;c=cf_getAdjust(c,opts,b.items,$tt0)}if(opts.circular||itms.total-c=opts.items.visible+c&&itms.total>c&&(c++,f=cf_getItemsAdjust(gn_getVisibleItemsNext(d,opts,itms.total-c),opts,opts.items.visibleConf.adjust,$tt0)),opts.items.visible=f}else if("*"!=opts.items.filter){var f=gn_getVisibleItemsNextFilter(d,opts,itms.total-c);opts.items.visible=cf_getItemsAdjust(f,opts,opts.items.visibleConf.adjust,$tt0)}if(sz_resetMargin(d,opts,!0),0==c)return a.stopImmediatePropagation(),debug(conf,"0 items to scroll: Not scrolling.");for(debug(conf,"Scrolling "+c+" items backward."),itms.first+=c;itms.first>=itms.total;)itms.first-=itms.total;opts.circular||(0==itms.first&&b.onEnd&&b.onEnd.call($tt0,"prev"),opts.infinite||nv_enableNavi(opts,itms.first,conf)),$cfs.children().slice(itms.total-c,itms.total).prependTo($cfs),itms.totall?opts.padding[opts.d[3]]:0,p=!1,q=$();if(c>opts.items.visible&&(q=d.slice(opts.items.visibleConf.old,c),"directscroll"==b.fx)){var r=opts.items[opts.d.width];p=q,i=k,sc_hideHiddenItems(p),opts.items[opts.d.width]="variable"}var s=!1,t=ms_getTotalSize(d.slice(0,c),opts,"width"),u=cf_mapWrapperSizes(ms_getSizes(h,opts,!0),opts,!opts.usePadding),v=0,w={},x={},y={},z={},A={},B={},C={},D=sc_getDuration(b,opts,c,t);switch(b.fx){case"cover":case"cover-fade":v=ms_getTotalSize(d.slice(0,opts.items.visible),opts,"width")}p&&(opts.items[opts.d.width]=r),sz_resetMargin(d,opts,!0),m>=0&&sz_resetMargin(j,opts,opts.padding[opts.d[1]]),l>=0&&sz_resetMargin(i,opts,opts.padding[opts.d[3]]),opts.align&&(opts.padding[opts.d[1]]=m,opts.padding[opts.d[3]]=l),B[opts.d.left]=-(t-o),C[opts.d.left]=-(v-o),x[opts.d.left]=u[opts.d.width];var E=function(){},F=function(){},G=function(){},H=function(){},I=function(){},J=function(){},K=function(){},L=function(){},M=function(){},N=function(){},O=function(){};switch(b.fx){case"crossfade":case"cover":case"cover-fade":case"uncover":case"uncover-fade":s=$cfs.clone(!0).appendTo($wrp)}switch(b.fx){case"crossfade":case"uncover":case"uncover-fade":s.children().slice(0,c).remove(),s.children().slice(opts.items.visibleConf.old).remove();break;case"cover":case"cover-fade":s.children().slice(opts.items.visible).remove(),s.css(C)}if($cfs.css(B),scrl=sc_setScroll(D,b.easing,conf),w[opts.d.left]=opts.usePadding?opts.padding[opts.d[3]]:0,("variable"==opts[opts.d.width]||"variable"==opts[opts.d.height])&&(E=function(){$wrp.css(u)},F=function(){scrl.anims.push([$wrp,u])}),opts.usePadding){switch(k.not(i).length&&(y[opts.d.marginRight]=i.data("_cfs_origCssMargin"),0>l?i.css(y):(K=function(){i.css(y)},L=function(){scrl.anims.push([i,y])})),b.fx){case"cover":case"cover-fade":s.children().eq(c-1).css(y)}k.not(j).length&&(z[opts.d.marginRight]=j.data("_cfs_origCssMargin"),G=function(){j.css(z)},H=function(){scrl.anims.push([j,z])}),m>=0&&(A[opts.d.marginRight]=k.data("_cfs_origCssMargin")+opts.padding[opts.d[1]],I=function(){k.css(A)},J=function(){scrl.anims.push([k,A])})}O=function(){$cfs.css(w)};var P=opts.items.visible+c-itms.total;N=function(){if(P>0&&($cfs.children().slice(itms.total).remove(),g=$($cfs.children().slice(itms.total-(opts.items.visible-P)).get().concat($cfs.children().slice(0,P).get()))),sc_showHiddenItems(p),opts.usePadding){var a=$cfs.children().eq(opts.items.visible+c-1);a.css(opts.d.marginRight,a.data("_cfs_origCssMargin"))}};var Q=sc_mapCallbackArguments(g,q,h,c,"prev",D,u);switch(M=function(){sc_afterScroll($cfs,s,b),crsl.isScrolling=!1,clbk.onAfter=sc_fireCallbacks($tt0,b,"onAfter",Q,clbk),queu=sc_fireQueue($cfs,queu,conf),crsl.isPaused||$cfs.trigger(cf_e("play",conf))},crsl.isScrolling=!0,tmrs=sc_clearTimers(tmrs),clbk.onBefore=sc_fireCallbacks($tt0,b,"onBefore",Q,clbk),b.fx){case"none":$cfs.css(w),E(),G(),I(),K(),O(),N(),M();break;case"fade":scrl.anims.push([$cfs,{opacity:0},function(){E(),G(),I(),K(),O(),N(),scrl=sc_setScroll(D,b.easing,conf),scrl.anims.push([$cfs,{opacity:1},M]),sc_startScroll(scrl,conf)}]);break;case"crossfade":$cfs.css({opacity:0}),scrl.anims.push([s,{opacity:0}]),scrl.anims.push([$cfs,{opacity:1},M]),F(),G(),I(),K(),O(),N();break;case"cover":scrl.anims.push([s,w,function(){G(),I(),K(),O(),N(),M()}]),F();break;case"cover-fade":scrl.anims.push([$cfs,{opacity:0}]),scrl.anims.push([s,w,function(){G(),I(),K(),O(),N(),M()}]),F();break;case"uncover":scrl.anims.push([s,x,M]),F(),G(),I(),K(),O(),N();break;case"uncover-fade":$cfs.css({opacity:0}),scrl.anims.push([$cfs,{opacity:1}]),scrl.anims.push([s,x,M]),F(),G(),I(),K(),O(),N();break;default:scrl.anims.push([$cfs,w,function(){N(),M()}]),F(),H(),J(),L()}return sc_startScroll(scrl,conf),cf_setCookie(opts.cookie,$cfs,conf),$cfs.trigger(cf_e("updatePageStatus",conf),[!1,u]),!0 }),$cfs.bind(cf_e("slide_next",conf),function(a,b,c){a.stopPropagation();var d=$cfs.children();if(!opts.circular&&itms.first==opts.items.visible)return opts.infinite&&$cfs.trigger(cf_e("prev",conf),itms.total-1),a.stopImmediatePropagation();if(sz_resetMargin(d,opts),!is_number(c)){if("*"!=opts.items.filter){var e=is_number(b.items)?b.items:gn_getVisibleOrg($cfs,opts);c=gn_getScrollItemsNextFilter(d,opts,0,e)}else c=opts.items.visible;c=cf_getAdjust(c,opts,b.items,$tt0)}var f=0==itms.first?itms.total:itms.first;if(!opts.circular){if(opts.items.visibleConf.variable)var g=gn_getVisibleItemsNext(d,opts,c),e=gn_getVisibleItemsPrev(d,opts,f-1);else var g=opts.items.visible,e=opts.items.visible;c+g>f&&(c=f-e)}if(opts.items.visibleConf.old=opts.items.visible,opts.items.visibleConf.variable){for(var g=cf_getItemsAdjust(gn_getVisibleItemsNextTestCircular(d,opts,c,f),opts,opts.items.visibleConf.adjust,$tt0);opts.items.visible-c>=g&&itms.total>c;)c++,g=cf_getItemsAdjust(gn_getVisibleItemsNextTestCircular(d,opts,c,f),opts,opts.items.visibleConf.adjust,$tt0);opts.items.visible=g}else if("*"!=opts.items.filter){var g=gn_getVisibleItemsNextFilter(d,opts,c);opts.items.visible=cf_getItemsAdjust(g,opts,opts.items.visibleConf.adjust,$tt0)}if(sz_resetMargin(d,opts,!0),0==c)return a.stopImmediatePropagation(),debug(conf,"0 items to scroll: Not scrolling.");for(debug(conf,"Scrolling "+c+" items forward."),itms.first-=c;0>itms.first;)itms.first+=itms.total;opts.circular||(itms.first==opts.items.visible&&b.onEnd&&b.onEnd.call($tt0,"next"),opts.infinite||nv_enableNavi(opts,itms.first,conf)),itms.totalopts.items.visibleConf.old&&(q=d.slice(opts.items.visibleConf.old,c),"directscroll"==b.fx)){var r=opts.items[opts.d.width];p=q,j=k,sc_hideHiddenItems(p),opts.items[opts.d.width]="variable"}var s=!1,t=ms_getTotalSize(d.slice(0,c),opts,"width"),u=cf_mapWrapperSizes(ms_getSizes(i,opts,!0),opts,!opts.usePadding),v=0,w={},x={},y={},z={},A={},B=sc_getDuration(b,opts,c,t);switch(b.fx){case"uncover":case"uncover-fade":v=ms_getTotalSize(d.slice(0,opts.items.visibleConf.old),opts,"width")}p&&(opts.items[opts.d.width]=r),opts.align&&0>opts.padding[opts.d[1]]&&(opts.padding[opts.d[1]]=0),sz_resetMargin(d,opts,!0),sz_resetMargin(k,opts,opts.padding[opts.d[1]]),opts.align&&(opts.padding[opts.d[1]]=n,opts.padding[opts.d[3]]=m),A[opts.d.left]=opts.usePadding?opts.padding[opts.d[3]]:0;var C=function(){},D=function(){},E=function(){},F=function(){},G=function(){},H=function(){},I=function(){},J=function(){},K=function(){};switch(b.fx){case"crossfade":case"cover":case"cover-fade":case"uncover":case"uncover-fade":s=$cfs.clone(!0).appendTo($wrp),s.children().slice(opts.items.visibleConf.old).remove()}switch(b.fx){case"crossfade":case"cover":case"cover-fade":$cfs.css("zIndex",1),s.css("zIndex",0)}if(scrl=sc_setScroll(B,b.easing,conf),w[opts.d.left]=-t,x[opts.d.left]=-v,0>m&&(w[opts.d.left]+=m),("variable"==opts[opts.d.width]||"variable"==opts[opts.d.height])&&(C=function(){$wrp.css(u)},D=function(){scrl.anims.push([$wrp,u])}),opts.usePadding){var L=l.data("_cfs_origCssMargin");n>=0&&(L+=opts.padding[opts.d[1]]),l.css(opts.d.marginRight,L),j.not(k).length&&(z[opts.d.marginRight]=k.data("_cfs_origCssMargin")),E=function(){k.css(z)},F=function(){scrl.anims.push([k,z])};var M=j.data("_cfs_origCssMargin");m>0&&(M+=opts.padding[opts.d[3]]),y[opts.d.marginRight]=M,G=function(){j.css(y)},H=function(){scrl.anims.push([j,y])}}K=function(){$cfs.css(A)};var N=opts.items.visible+c-itms.total;J=function(){N>0&&$cfs.children().slice(itms.total).remove();var a=$cfs.children().slice(0,c).appendTo($cfs).last();if(N>0&&(i=gi_getCurrentItems(d,opts)),sc_showHiddenItems(p),opts.usePadding){if(itms.total=b?"next":"prev":0==itms.first||itms.first>b?"next":"prev"),"prev"==f&&(b=itms.total-b),$cfs.trigger(cf_e(f,conf),[e,b,g]),!0)}),$cfs.bind(cf_e("prevPage",conf),function(a,b,c){a.stopPropagation();var d=$cfs.triggerHandler(cf_e("currentPage",conf));return $cfs.triggerHandler(cf_e("slideToPage",conf),[d-1,b,"prev",c])}),$cfs.bind(cf_e("nextPage",conf),function(a,b,c){a.stopPropagation();var d=$cfs.triggerHandler(cf_e("currentPage",conf));return $cfs.triggerHandler(cf_e("slideToPage",conf),[d+1,b,"next",c])}),$cfs.bind(cf_e("slideToPage",conf),function(a,b,c,d,e){a.stopPropagation(),is_number(b)||(b=$cfs.triggerHandler(cf_e("currentPage",conf)));var f=opts.pagination.items||opts.items.visible,g=Math.ceil(itms.total/f)-1;return 0>b&&(b=g),b>g&&(b=0),$cfs.triggerHandler(cf_e("slideTo",conf),[b*f,0,!0,c,d,e])}),$cfs.bind(cf_e("jumpToStart",conf),function(a,b){if(a.stopPropagation(),b=b?gn_getItemIndex(b,0,!0,itms,$cfs):0,b+=itms.first,0!=b){if(itms.total>0)for(;b>itms.total;)b-=itms.total;$cfs.prepend($cfs.children().slice(b,itms.total))}return!0}),$cfs.bind(cf_e("synchronise",conf),function(a,b){if(a.stopPropagation(),b)b=cf_getSynchArr(b);else{if(!opts.synchronise)return debug(conf,"No carousel to synchronise.");b=opts.synchronise}for(var c=$cfs.triggerHandler(cf_e("currentPosition",conf)),d=!0,e=0,f=b.length;f>e;e++)b[e][0].triggerHandler(cf_e("slideTo",conf),[c,b[e][3],!0])||(d=!1);return d}),$cfs.bind(cf_e("queue",conf),function(a,b,c){return a.stopPropagation(),is_function(b)?b.call($tt0,queu):is_array(b)?queu=b:is_undefined(b)||queu.push([b,c]),queu}),$cfs.bind(cf_e("insertItem",conf),function(a,b,c,d,e){a.stopPropagation();var f=[b,c,d,e],g=["string/object","string/number/object","boolean","number"],h=cf_sortParams(f,g);if(b=h[0],c=h[1],d=h[2],e=h[3],is_object(b)&&!is_jquery(b)?b=$(b):is_string(b)&&(b=$(b)),!is_jquery(b)||0==b.length)return debug(conf,"Not a valid object.");is_undefined(c)&&(c="end"),sz_storeMargin(b,opts),sz_storeOrigCss(b);var i=c,j="before";"end"==c?d?(0==itms.first?(c=itms.total-1,j="after"):(c=itms.first,itms.first+=b.length),0>c&&(c=0)):(c=itms.total-1,j="after"):c=gn_getItemIndex(c,e,d,itms,$cfs);var k=$cfs.children().eq(c);return k.length?k[j](b):(debug(conf,"Correct insert-position not found! Appending item to the end."),$cfs.append(b)),"end"==i||d||itms.first>c&&(itms.first+=b.length),itms.total=$cfs.children().length,itms.first>=itms.total&&(itms.first-=itms.total),$cfs.trigger(cf_e("updateSizes",conf)),$cfs.trigger(cf_e("linkAnchors",conf)),!0}),$cfs.bind(cf_e("removeItem",conf),function(a,b,c,d){a.stopPropagation();var e=[b,c,d],f=["string/number/object","boolean","number"],g=cf_sortParams(e,f);if(b=g[0],c=g[1],d=g[2],b instanceof $&&b.length>1)return i=$(),b.each(function(){var e=$cfs.trigger(cf_e("removeItem",conf),[$(this),c,d]);e&&(i=i.add(e))}),i;if(is_undefined(b)||"end"==b)i=$cfs.children().last();else{b=gn_getItemIndex(b,d,c,itms,$cfs);var i=$cfs.children().eq(b);i.length&&itms.first>b&&(itms.first-=i.length)}return i&&i.length&&(i.detach(),itms.total=$cfs.children().length,$cfs.trigger(cf_e("updateSizes",conf))),i}),$cfs.bind(cf_e("onBefore",conf)+" "+cf_e("onAfter",conf),function(a,b){a.stopPropagation();var c=a.type.slice(conf.events.prefix.length);return is_array(b)&&(clbk[c]=b),is_function(b)&&clbk[c].push(b),clbk[c]}),$cfs.bind(cf_e("currentPosition",conf),function(a,b){if(a.stopPropagation(),0==itms.first)var c=0;else var c=itms.total-itms.first;return is_function(b)&&b.call($tt0,c),c}),$cfs.bind(cf_e("currentPage",conf),function(a,b){a.stopPropagation();var e,c=opts.pagination.items||opts.items.visible,d=Math.ceil(itms.total/c-1);return e=0==itms.first?0:itms.firste&&(e=0),e>d&&(e=d),is_function(b)&&b.call($tt0,e),e}),$cfs.bind(cf_e("currentVisible",conf),function(a,b){a.stopPropagation();var c=gi_getCurrentItems($cfs.children(),opts);return is_function(b)&&b.call($tt0,c),c}),$cfs.bind(cf_e("slice",conf),function(a,b,c,d){if(a.stopPropagation(),0==itms.total)return!1;var e=[b,c,d],f=["number","number","function"],g=cf_sortParams(e,f);if(b=is_number(g[0])?g[0]:0,c=is_number(g[1])?g[1]:itms.total,d=g[2],b+=itms.first,c+=itms.first,items.total>0){for(;b>itms.total;)b-=itms.total;for(;c>itms.total;)c-=itms.total;for(;0>b;)b+=itms.total;for(;0>c;)c+=itms.total}var i,h=$cfs.children();return i=c>b?h.slice(b,c):$(h.slice(b,itms.total).get().concat(h.slice(0,c).get())),is_function(d)&&d.call($tt0,i),i}),$cfs.bind(cf_e("isPaused",conf)+" "+cf_e("isStopped",conf)+" "+cf_e("isScrolling",conf),function(a,b){a.stopPropagation();var c=a.type.slice(conf.events.prefix.length),d=crsl[c];return is_function(b)&&b.call($tt0,d),d}),$cfs.bind(cf_e("configuration",conf),function(e,a,b,c){e.stopPropagation();var reInit=!1;if(is_function(a))a.call($tt0,opts);else if(is_object(a))opts_orig=$.extend(!0,{},opts_orig,a),b!==!1?reInit=!0:opts=$.extend(!0,{},opts,a);else if(!is_undefined(a))if(is_function(b)){var val=eval("opts."+a);is_undefined(val)&&(val=""),b.call($tt0,val)}else{if(is_undefined(b))return eval("opts."+a);"boolean"!=typeof c&&(c=!0),eval("opts_orig."+a+"=b"),c!==!1?reInit=!0:eval("opts."+a+"=b")}if(reInit){sz_resetMargin($cfs.children(),opts),FN._init(opts_orig),FN._bind_buttons();var sz=sz_setSizes($cfs,opts);$cfs.trigger(cf_e("updatePageStatus",conf),[!0,sz])}return opts}),$cfs.bind(cf_e("linkAnchors",conf),function(a,b,c){return a.stopPropagation(),is_undefined(b)?b=$("body"):is_string(b)&&(b=$(b)),is_jquery(b)&&0!=b.length?(is_string(c)||(c="a.caroufredsel"),b.find(c).each(function(){var a=this.hash||"";a.length>0&&-1!=$cfs.children().index($(a))&&$(this).unbind("click").click(function(b){b.preventDefault(),$cfs.trigger(cf_e("slideTo",conf),a)})}),!0):debug(conf,"Not a valid object.")}),$cfs.bind(cf_e("updatePageStatus",conf),function(a,b){if(a.stopPropagation(),opts.pagination.container){var d=opts.pagination.items||opts.items.visible,e=Math.ceil(itms.total/d);b&&(opts.pagination.anchorBuilder&&(opts.pagination.container.children().remove(),opts.pagination.container.each(function(){for(var a=0;e>a;a++){var b=$cfs.children().eq(gn_getItemIndex(a*d,0,!0,itms,$cfs));$(this).append(opts.pagination.anchorBuilder.call(b[0],a+1))}})),opts.pagination.container.each(function(){$(this).children().unbind(opts.pagination.event).each(function(a){$(this).bind(opts.pagination.event,function(b){b.preventDefault(),$cfs.trigger(cf_e("slideTo",conf),[a*d,-opts.pagination.deviation,!0,opts.pagination])})})}));var f=$cfs.triggerHandler(cf_e("currentPage",conf))+opts.pagination.deviation;return f>=e&&(f=0),0>f&&(f=e-1),opts.pagination.container.each(function(){$(this).children().removeClass(cf_c("selected",conf)).eq(f).addClass(cf_c("selected",conf))}),!0}}),$cfs.bind(cf_e("updateSizes",conf),function(){var b=opts.items.visible,c=$cfs.children(),d=ms_getParentSize($wrp,opts,"width");if(itms.total=c.length,crsl.primarySizePercentage?(opts.maxDimension=d,opts[opts.d.width]=ms_getPercentage(d,crsl.primarySizePercentage)):opts.maxDimension=ms_getMaxDimension(opts,d),opts.responsive?(opts.items.width=opts.items.sizesConf.width,opts.items.height=opts.items.sizesConf.height,opts=in_getResponsiveValues(opts,c,d),b=opts.items.visible,sz_setResponsiveSizes(opts,c)):opts.items.visibleConf.variable?b=gn_getVisibleItemsNext(c,opts,0):"*"!=opts.items.filter&&(b=gn_getVisibleItemsNextFilter(c,opts,0)),!opts.circular&&0!=itms.first&&b>itms.first){if(opts.items.visibleConf.variable)var e=gn_getVisibleItemsPrev(c,opts,itms.first)-itms.first;else if("*"!=opts.items.filter)var e=gn_getVisibleItemsPrevFilter(c,opts,itms.first)-itms.first;else var e=opts.items.visible-itms.first;debug(conf,"Preventing non-circular: sliding "+e+" items backward."),$cfs.trigger(cf_e("prev",conf),e)}opts.items.visible=cf_getItemsAdjust(b,opts,opts.items.visibleConf.adjust,$tt0),opts.items.visibleConf.old=opts.items.visible,opts=in_getAlignPadding(opts,c);var f=sz_setSizes($cfs,opts);return $cfs.trigger(cf_e("updatePageStatus",conf),[!0,f]),nv_showNavi(opts,itms.total,conf),nv_enableNavi(opts,itms.first,conf),f}),$cfs.bind(cf_e("destroy",conf),function(a,b){return a.stopPropagation(),tmrs=sc_clearTimers(tmrs),$cfs.data("_cfs_isCarousel",!1),$cfs.trigger(cf_e("finish",conf)),b&&$cfs.trigger(cf_e("jumpToStart",conf)),sz_restoreOrigCss($cfs.children()),sz_restoreOrigCss($cfs),FN._unbind_events(),FN._unbind_buttons(),"parent"==conf.wrapper?sz_restoreOrigCss($wrp):$wrp.replaceWith($cfs),!0}),$cfs.bind(cf_e("debug",conf),function(){return debug(conf,"Carousel width: "+opts.width),debug(conf,"Carousel height: "+opts.height),debug(conf,"Item widths: "+opts.items.width),debug(conf,"Item heights: "+opts.items.height),debug(conf,"Number of items visible: "+opts.items.visible),opts.auto.play&&debug(conf,"Number of items scrolled automatically: "+opts.auto.items),opts.prev.button&&debug(conf,"Number of items scrolled backward: "+opts.prev.items),opts.next.button&&debug(conf,"Number of items scrolled forward: "+opts.next.items),conf.debug}),$cfs.bind("_cfs_triggerEvent",function(a,b,c){return a.stopPropagation(),$cfs.triggerHandler(cf_e(b,conf),c)})},FN._unbind_events=function(){$cfs.unbind(cf_e("",conf)),$cfs.unbind(cf_e("",conf,!1)),$cfs.unbind("_cfs_triggerEvent")},FN._bind_buttons=function(){if(FN._unbind_buttons(),nv_showNavi(opts,itms.total,conf),nv_enableNavi(opts,itms.first,conf),opts.auto.pauseOnHover){var a=bt_pauseOnHoverConfig(opts.auto.pauseOnHover);$wrp.bind(cf_e("mouseenter",conf,!1),function(){$cfs.trigger(cf_e("pause",conf),a)}).bind(cf_e("mouseleave",conf,!1),function(){$cfs.trigger(cf_e("resume",conf))})}if(opts.auto.button&&opts.auto.button.bind(cf_e(opts.auto.event,conf,!1),function(a){a.preventDefault();var b=!1,c=null;crsl.isPaused?b="play":opts.auto.pauseOnEvent&&(b="pause",c=bt_pauseOnHoverConfig(opts.auto.pauseOnEvent)),b&&$cfs.trigger(cf_e(b,conf),c)}),opts.prev.button&&(opts.prev.button.bind(cf_e(opts.prev.event,conf,!1),function(a){a.preventDefault(),$cfs.trigger(cf_e("prev",conf))}),opts.prev.pauseOnHover)){var a=bt_pauseOnHoverConfig(opts.prev.pauseOnHover);opts.prev.button.bind(cf_e("mouseenter",conf,!1),function(){$cfs.trigger(cf_e("pause",conf),a)}).bind(cf_e("mouseleave",conf,!1),function(){$cfs.trigger(cf_e("resume",conf))})}if(opts.next.button&&(opts.next.button.bind(cf_e(opts.next.event,conf,!1),function(a){a.preventDefault(),$cfs.trigger(cf_e("next",conf))}),opts.next.pauseOnHover)){var a=bt_pauseOnHoverConfig(opts.next.pauseOnHover);opts.next.button.bind(cf_e("mouseenter",conf,!1),function(){$cfs.trigger(cf_e("pause",conf),a)}).bind(cf_e("mouseleave",conf,!1),function(){$cfs.trigger(cf_e("resume",conf))})}if(opts.pagination.container&&opts.pagination.pauseOnHover){var a=bt_pauseOnHoverConfig(opts.pagination.pauseOnHover);opts.pagination.container.bind(cf_e("mouseenter",conf,!1),function(){$cfs.trigger(cf_e("pause",conf),a)}).bind(cf_e("mouseleave",conf,!1),function(){$cfs.trigger(cf_e("resume",conf))})}if((opts.prev.key||opts.next.key)&&$(document).bind(cf_e("keyup",conf,!1,!0,!0),function(a){var b=a.keyCode;b==opts.next.key&&(a.preventDefault(),$cfs.trigger(cf_e("next",conf))),b==opts.prev.key&&(a.preventDefault(),$cfs.trigger(cf_e("prev",conf)))}),opts.pagination.keys&&$(document).bind(cf_e("keyup",conf,!1,!0,!0),function(a){var b=a.keyCode;b>=49&&58>b&&(b=(b-49)*opts.items.visible,itms.total>=b&&(a.preventDefault(),$cfs.trigger(cf_e("slideTo",conf),[b,0,!0,opts.pagination])))}),$.fn.swipe){var b="ontouchstart"in window;if(b&&opts.swipe.onTouch||!b&&opts.swipe.onMouse){var c=$.extend(!0,{},opts.prev,opts.swipe),d=$.extend(!0,{},opts.next,opts.swipe),e=function(){$cfs.trigger(cf_e("prev",conf),[c])},f=function(){$cfs.trigger(cf_e("next",conf),[d])};switch(opts.direction){case"up":case"down":opts.swipe.options.swipeUp=f,opts.swipe.options.swipeDown=e;break;default:opts.swipe.options.swipeLeft=f,opts.swipe.options.swipeRight=e}crsl.swipe&&$cfs.swipe("destroy"),$wrp.swipe(opts.swipe.options),$wrp.css("cursor","move"),crsl.swipe=!0}}if($.fn.mousewheel&&opts.mousewheel){var g=$.extend(!0,{},opts.prev,opts.mousewheel),h=$.extend(!0,{},opts.next,opts.mousewheel);crsl.mousewheel&&$wrp.unbind(cf_e("mousewheel",conf,!1)),$wrp.bind(cf_e("mousewheel",conf,!1),function(a,b){a.preventDefault(),b>0?$cfs.trigger(cf_e("prev",conf),[g]):$cfs.trigger(cf_e("next",conf),[h])}),crsl.mousewheel=!0}if(opts.auto.play&&$cfs.trigger(cf_e("play",conf),opts.auto.delay),crsl.upDateOnWindowResize){var i=function(){$cfs.trigger(cf_e("finish",conf)),opts.auto.pauseOnResize&&!crsl.isPaused&&$cfs.trigger(cf_e("play",conf)),sz_resetMargin($cfs.children(),opts),$cfs.trigger(cf_e("updateSizes",conf))},j=$(window),k=null;if($.debounce&&"debounce"==conf.onWindowResize)k=$.debounce(200,i);else if($.throttle&&"throttle"==conf.onWindowResize)k=$.throttle(300,i);else{var l=0,m=0;k=function(){var a=j.width(),b=j.height();(a!=l||b!=m)&&(i(),l=a,m=b)}}j.bind(cf_e("resize",conf,!1,!0,!0),k)}},FN._unbind_buttons=function(){var b=(cf_e("",conf),cf_e("",conf,!1));ns3=cf_e("",conf,!1,!0,!0),$(document).unbind(ns3),$(window).unbind(ns3),$wrp.unbind(b),opts.auto.button&&opts.auto.button.unbind(b),opts.prev.button&&opts.prev.button.unbind(b),opts.next.button&&opts.next.button.unbind(b),opts.pagination.container&&(opts.pagination.container.unbind(b),opts.pagination.anchorBuilder&&opts.pagination.container.children().remove()),crsl.swipe&&($cfs.swipe("destroy"),$wrp.css("cursor","default"),crsl.swipe=!1),crsl.mousewheel&&(crsl.mousewheel=!1),nv_showNavi(opts,"hide",conf),nv_enableNavi(opts,"removeClass",conf)},is_boolean(configs)&&(configs={debug:configs});var crsl={direction:"next",isPaused:!0,isScrolling:!1,isStopped:!1,mousewheel:!1,swipe:!1},itms={total:$cfs.children().length,first:0},tmrs={auto:null,progress:null,startTime:getTime(),timePassed:0},scrl={isStopped:!1,duration:0,startTime:0,easing:"",anims:[]},clbk={onBefore:[],onAfter:[]},queu=[],conf=$.extend(!0,{},$.fn.carouFredSel.configs,configs),opts={},opts_orig=$.extend(!0,{},options),$wrp="parent"==conf.wrapper?$cfs.parent():$cfs.wrap("<"+conf.wrapper.element+' class="'+conf.wrapper.classname+'" />').parent();if(conf.selector=$cfs.selector,conf.serialNumber=$.fn.carouFredSel.serialNumber++,conf.transition=conf.transition&&$.fn.transition?"transition":"animate",FN._init(opts_orig,!0,starting_position),FN._build(),FN._bind_events(),FN._bind_buttons(),is_array(opts.items.start))var start_arr=opts.items.start;else{var start_arr=[];0!=opts.items.start&&start_arr.push(opts.items.start)}if(opts.cookie&&start_arr.unshift(parseInt(cf_getCookie(opts.cookie),10)),start_arr.length>0)for(var a=0,l=start_arr.length;l>a;a++){var s=start_arr[a];if(0!=s){if(s===!0){if(s=window.location.hash,1>s.length)continue}else"random"===s&&(s=Math.floor(Math.random()*itms.total));if($cfs.triggerHandler(cf_e("slideTo",conf),[s,0,!0,{fx:"none"}]))break}}var siz=sz_setSizes($cfs,opts),itm=gi_getCurrentItems($cfs.children(),opts);return opts.onCreate&&opts.onCreate.call($tt0,{width:siz.width,height:siz.height,items:itm}),$cfs.trigger(cf_e("updatePageStatus",conf),[!0,siz]),$cfs.trigger(cf_e("linkAnchors",conf)),conf.debug&&$cfs.trigger(cf_e("debug",conf)),$cfs},$.fn.carouFredSel.serialNumber=1,$.fn.carouFredSel.defaults={synchronise:!1,infinite:!0,circular:!0,responsive:!1,direction:"left",items:{start:0},scroll:{easing:"swing",duration:500,pauseOnHover:!1,event:"click",queue:!1}},$.fn.carouFredSel.configs={debug:!1,transition:!1,onWindowResize:"throttle",events:{prefix:"",namespace:"cfs"},wrapper:{element:"div",classname:"caroufredsel_wrapper"},classnames:{}},$.fn.carouFredSel.pageAnchorBuilder=function(a){return''+a+""},$.fn.carouFredSel.progressbarUpdater=function(a){$(this).css("width",a+"%")},$.fn.carouFredSel.cookie={get:function(a){a+="=";for(var b=document.cookie.split(";"),c=0,d=b.length;d>c;c++){for(var e=b[c];" "==e.charAt(0);)e=e.slice(1);if(0==e.indexOf(a))return e.slice(a.length)}return 0},set:function(a,b,c){var d="";if(c){var e=new Date;e.setTime(e.getTime()+1e3*60*60*24*c),d="; expires="+e.toGMTString()}document.cookie=a+"="+b+d+"; path=/"},remove:function(a){$.fn.carouFredSel.cookie.set(a,"",-1)}},$.extend($.easing,{quadratic:function(a){var b=a*a;return a*(-b*a+4*b-6*a+4)},cubic:function(a){return a*(4*a*a-9*a+6)},elastic:function(a){var b=a*a;return a*(33*b*b-106*b*a+126*b-67*a+15)}}))})(jQuery); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('jquery-bridget/jquery-bridget',[ 'jquery' ], function(jQuery){ return factory(window, jQuery); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('jquery') ); }else{ window.jQueryBridget=factory( window, window.jQuery ); }}(window, function factory(window, jQuery){ 'use strict'; var arraySlice=Array.prototype.slice; var console=window.console; var logError=typeof console=='undefined' ? function(){} : function(message){ console.error(message); }; function jQueryBridget(namespace, PluginClass, $){ $=$||jQuery||window.jQuery; if(!$){ return; } if(!PluginClass.prototype.option){ PluginClass.prototype.option=function(opts){ if(!$.isPlainObject(opts)){ return; } this.options=$.extend(true, this.options, opts); };} $.fn[ namespace ]=function(arg0 ){ if(typeof arg0=='string'){ var args=arraySlice.call(arguments, 1); return methodCall(this, arg0, args); } plainCall(this, arg0); return this; }; function methodCall($elems, methodName, args){ var returnValue; var pluginMethodStr='$().' + namespace + '("' + methodName + '")'; $elems.each(function(i, elem){ var instance=$.data(elem, namespace); if(!instance){ logError(namespace + ' not initialized. Cannot call methods, i.e. ' + pluginMethodStr); return; } var method=instance[ methodName ]; if(!method||methodName.charAt(0)=='_'){ logError(pluginMethodStr + ' is not a valid method'); return; } var value=method.apply(instance, args); returnValue=returnValue===undefined ? value:returnValue; }); return returnValue!==undefined ? returnValue:$elems; } function plainCall($elems, options){ $elems.each(function(i, elem){ var instance=$.data(elem, namespace); if(instance){ instance.option(options); instance._init(); }else{ instance=new PluginClass(elem, options); $.data(elem, namespace, instance); }}); } updateJQuery($); } function updateJQuery($){ if(!$||($&&$.bridget)){ return; } $.bridget=jQueryBridget; } updateJQuery(jQuery||window.jQuery); return jQueryBridget; })); (function(global, factory){ if(typeof define=='function'&&define.amd){ define('ev-emitter/ev-emitter',factory); }else if(typeof module=='object'&&module.exports){ module.exports=factory(); }else{ global.EvEmitter=factory(); }}(typeof window!='undefined' ? window:this, function(){ function EvEmitter(){} var proto=EvEmitter.prototype; proto.on=function(eventName, listener){ if(!eventName||!listener){ return; } var events=this._events=this._events||{}; var listeners=events[ eventName ]=events[ eventName ]||[]; if(listeners.indexOf(listener)==-1){ listeners.push(listener); } return this; }; proto.once=function(eventName, listener){ if(!eventName||!listener){ return; } this.on(eventName, listener); var onceEvents=this._onceEvents=this._onceEvents||{}; var onceListeners=onceEvents[ eventName ]=onceEvents[ eventName ]||{}; onceListeners[ listener ]=true; return this; }; proto.off=function(eventName, listener){ var listeners=this._events&&this._events[ eventName ]; if(!listeners||!listeners.length){ return; } var index=listeners.indexOf(listener); if(index!=-1){ listeners.splice(index, 1); } return this; }; proto.emitEvent=function(eventName, args){ var listeners=this._events&&this._events[ eventName ]; if(!listeners||!listeners.length){ return; } listeners=listeners.slice(0); args=args||[]; var onceListeners=this._onceEvents&&this._onceEvents[ eventName ]; for(var i=0; i < listeners.length; i++){ var listener=listeners[i] var isOnce=onceListeners&&onceListeners[ listener ]; if(isOnce){ this.off(eventName, listener); delete onceListeners[ listener ]; } listener.apply(this, args); } return this; }; proto.allOff=function(){ delete this._events; delete this._onceEvents; }; return EvEmitter; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('get-size/get-size',factory); }else if(typeof module=='object'&&module.exports){ module.exports=factory(); }else{ window.getSize=factory(); }})(window, function factory(){ 'use strict'; function getStyleSize(value){ var num=parseFloat(value); var isValid=value.indexOf('%')==-1&&!isNaN(num); return isValid&# } function noop(){} var logError=typeof console=='undefined' ? noop : function(message){ console.error(message); }; var measurements=[ 'paddingLeft', 'paddingRight', 'paddingTop', 'paddingBottom', 'marginLeft', 'marginRight', 'marginTop', 'marginBottom', 'borderLeftWidth', 'borderRightWidth', 'borderTopWidth', 'borderBottomWidth' ]; var measurementsLength=measurements.length; function getZeroSize(){ var size={ width: 0, height: 0, innerWidth: 0, innerHeight: 0, outerWidth: 0, outerHeight: 0 }; for(var i=0; i < measurementsLength; i++){ var measurement=measurements[i]; size[ measurement ]=0; } return size; } function getStyle(elem){ var style=getComputedStyle(elem); if(!style){ logError('Style returned ' + style + '. Are you running this code in a hidden iframe on Firefox? ' + 'See https://bit.ly/getsizebug1'); } return style; } var isSetup=false; var isBoxSizeOuter; function setup(){ if(isSetup){ return; } isSetup=true; var div=document.createElement('div'); div.style.width='200px'; div.style.padding='1px 2px 3px 4px'; div.style.borderStyle='solid'; div.style.borderWidth='1px 2px 3px 4px'; div.style.boxSizing='border-box'; var body=document.body||document.documentElement; body.appendChild(div); var style=getStyle(div); isBoxSizeOuter=Math.round(getStyleSize(style.width))==200; getSize.isBoxSizeOuter=isBoxSizeOuter; body.removeChild(div); } function getSize(elem){ setup(); if(typeof elem=='string'){ elem=document.querySelector(elem); } if(!elem||typeof elem!='object'||!elem.nodeType){ return; } var style=getStyle(elem); if(style.display=='none'){ return getZeroSize(); } var size={}; size.width=elem.offsetWidth; size.height=elem.offsetHeight; var isBorderBox=size.isBorderBox=style.boxSizing=='border-box'; for(var i=0; i < measurementsLength; i++){ var measurement=measurements[i]; var value=style[ measurement ]; var num=parseFloat(value); size[ measurement ] = !isNaN(num) ? num:0; } var paddingWidth=size.paddingLeft + size.paddingRight; var paddingHeight=size.paddingTop + size.paddingBottom; var marginWidth=size.marginLeft + size.marginRight; var marginHeight=size.marginTop + size.marginBottom; var borderWidth=size.borderLeftWidth + size.borderRightWidth; var borderHeight=size.borderTopWidth + size.borderBottomWidth; var isBorderBoxSizeOuter=isBorderBox&&isBoxSizeOuter; var styleWidth=getStyleSize(style.width); if(styleWidth!==false){ size.width=styleWidth + (isBorderBoxSizeOuter ? 0:paddingWidth + borderWidth); } var styleHeight=getStyleSize(style.height); if(styleHeight!==false){ size.height=styleHeight + (isBorderBoxSizeOuter ? 0:paddingHeight + borderHeight); } size.innerWidth=size.width -(paddingWidth + borderWidth); size.innerHeight=size.height -(paddingHeight + borderHeight); size.outerWidth=size.width + marginWidth; size.outerHeight=size.height + marginHeight; return size; } return getSize; }); (function(window, factory){ 'use strict'; if(typeof define=='function'&&define.amd){ define('desandro-matches-selector/matches-selector',factory); }else if(typeof module=='object'&&module.exports){ module.exports=factory(); }else{ window.matchesSelector=factory(); }}(window, function factory(){ 'use strict'; var matchesMethod=(function(){ var ElemProto=window.Element.prototype; if(ElemProto.matches){ return 'matches'; } if(ElemProto.matchesSelector){ return 'matchesSelector'; } var prefixes=[ 'webkit', 'moz', 'ms', 'o' ]; for(var i=0; i < prefixes.length; i++){ var prefix=prefixes[i]; var method=prefix + 'MatchesSelector'; if(ElemProto[ method ]){ return method; }} })(); return function matchesSelector(elem, selector){ return elem[ matchesMethod ](selector); };})); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('fizzy-ui-utils/utils',[ 'desandro-matches-selector/matches-selector' ], function(matchesSelector){ return factory(window, matchesSelector); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('desandro-matches-selector') ); }else{ window.fizzyUIUtils=factory( window, window.matchesSelector ); }}(window, function factory(window, matchesSelector){ var utils={}; utils.extend=function(a, b){ for(var prop in b){ a[ prop ]=b[ prop ]; } return a; }; utils.modulo=function(num, div){ return(( num % div) + div) % div; }; var arraySlice=Array.prototype.slice; utils.makeArray=function(obj){ if(Array.isArray(obj)){ return obj; } if(obj===null||obj===undefined){ return []; } var isArrayLike=typeof obj=='object'&&typeof obj.length=='number'; if(isArrayLike){ return arraySlice.call(obj); } return [ obj ]; }; utils.removeFrom=function(ary, obj){ var index=ary.indexOf(obj); if(index!=-1){ ary.splice(index, 1); }}; utils.getParent=function(elem, selector){ while(elem.parentNode&&elem!=document.body){ elem=elem.parentNode; if(matchesSelector(elem, selector)){ return elem; }} }; utils.getQueryElement=function(elem){ if(typeof elem=='string'){ return document.querySelector(elem); } return elem; }; utils.handleEvent=function(event){ var method='on' + event.type; if(this[ method ]){ this[ method ](event); }}; utils.filterFindElements=function(elems, selector){ elems=utils.makeArray(elems); var ffElems=[]; elems.forEach(function(elem){ if(!(elem instanceof HTMLElement)){ if(jQuery('body.compose-mode').length==0){ return; } } if(!selector){ ffElems.push(elem); return; } if(matchesSelector(elem, selector)){ ffElems.push(elem); } var childElems=elem.querySelectorAll(selector); for(var i=0; i < childElems.length; i++){ ffElems.push(childElems[i]); }}); return ffElems; }; utils.debounceMethod=function(_class, methodName, threshold){ threshold=threshold||100; var method=_class.prototype[ methodName ]; var timeoutName=methodName + 'Timeout'; _class.prototype[ methodName ]=function(){ var timeout=this[ timeoutName ]; clearTimeout(timeout); var args=arguments; var _this=this; this[ timeoutName ]=setTimeout(function(){ method.apply(_this, args); delete _this[ timeoutName ]; }, threshold); };}; utils.docReady=function(callback){ var readyState=document.readyState; if(readyState=='complete'||readyState=='interactive'){ setTimeout(callback); }else{ document.addEventListener('DOMContentLoaded', callback); }}; utils.toDashed=function(str){ return str.replace(/(.)([A-Z])/g, function(match, $1, $2){ return $1 + '-' + $2; }).toLowerCase(); }; var console=window.console; utils.htmlInit=function(WidgetClass, namespace){ utils.docReady(function(){ var dashedNamespace=utils.toDashed(namespace); var dataAttr='data-' + dashedNamespace; var dataAttrElems=document.querySelectorAll('[' + dataAttr + ']'); var jsDashElems=document.querySelectorAll('.js-' + dashedNamespace); var elems=utils.makeArray(dataAttrElems) .concat(utils.makeArray(jsDashElems)); var dataOptionsAttr=dataAttr + '-options'; var jQuery=window.jQuery; elems.forEach(function(elem){ var attr=elem.getAttribute(dataAttr) || elem.getAttribute(dataOptionsAttr); var options; try { options=attr&&JSON.parse(attr); } catch(error){ if(console){ console.error('Error parsing ' + dataAttr + ' on ' + elem.className + ': ' + error); } return; } var instance=new WidgetClass(elem, options); if(jQuery){ jQuery.data(elem, namespace, instance); }}); }); }; return utils; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/cell',[ 'get-size/get-size' ], function(getSize){ return factory(window, getSize); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('get-size') ); }else{ window.Flickity=window.Flickity||{}; window.Flickity.Cell=factory( window, window.getSize ); }}(window, function factory(window, getSize){ function Cell(elem, parent){ this.element=elem; this.parent=parent; this.create(); } var proto=Cell.prototype; proto.create=function(){ this.element.style.position='absolute'; this.element.setAttribute('aria-selected', 'false'); this.x=0; this.shift=0; }; proto.destroy=function(){ this.element.style.position=''; var side=this.parent.originSide; this.element.removeAttribute('aria-selected'); this.element.style[ side ]=''; }; proto.getSize=function(){ this.size=getSize(this.element); }; proto.setPosition=function(x){ this.x=x; this.updateTarget(); this.renderPosition(x); }; proto.updateTarget=proto.setDefaultTarget=function(){ var marginProperty=this.parent.originSide=='left' ? 'marginLeft':'marginRight'; this.target=this.x + this.size[ marginProperty ] + this.size.width * this.parent.cellAlign; }; proto.renderPosition=function(x){ var side=this.parent.originSide; this.element.style[ side ]=this.parent.getPositionValue(x); }; proto.wrapShift=function(shift){ this.shift=shift; this.renderPosition(this.x + this.parent.slideableWidth * shift); }; proto.remove=function(){ this.element.parentNode.removeChild(this.element); }; return Cell; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/slide',factory); }else if(typeof module=='object'&&module.exports){ module.exports=factory(); }else{ window.Flickity=window.Flickity||{}; window.Flickity.Slide=factory(); }}(window, function factory(){ 'use strict'; function Slide(parent){ this.parent=parent; this.isOriginLeft=parent.originSide=='left'; this.cells=[]; this.outerWidth=0; this.height=0; } var proto=Slide.prototype; proto.addCell=function(cell){ this.cells.push(cell); this.outerWidth +=cell.size.outerWidth; this.height=Math.max(cell.size.outerHeight, this.height); if(this.cells.length==1){ this.x=cell.x; var beginMargin=this.isOriginLeft ? 'marginLeft':'marginRight'; this.firstMargin=cell.size[ beginMargin ]; }}; proto.updateTarget=function(){ var endMargin=this.isOriginLeft ? 'marginRight':'marginLeft'; var lastCell=this.getLastCell(); var lastMargin=lastCell ? lastCell.size[ endMargin ]:0; var slideWidth=this.outerWidth -(this.firstMargin + lastMargin); this.target=this.x + this.firstMargin + slideWidth * this.parent.cellAlign; }; proto.getLastCell=function(){ return this.cells[ this.cells.length - 1 ]; }; proto.select=function(){ this.changeSelected(true); }; proto.unselect=function(){ this.changeSelected(false); }; proto.changeSelected=function(isSelected){ var classMethod=isSelected ? 'add':'remove'; this.cells.forEach(function(cell){ cell.element.classList[ classMethod ]('is-selected'); cell.element.setAttribute('aria-selected', isSelected.toString()); }); }; proto.getCellElements=function(){ return this.cells.map(function(cell){ return cell.element; }); }; return Slide; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/animate',[ 'fizzy-ui-utils/utils' ], function(utils){ return factory(window, utils); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('fizzy-ui-utils') ); }else{ window.Flickity=window.Flickity||{}; window.Flickity.animatePrototype=factory( window, window.fizzyUIUtils ); }}(window, function factory(window, utils){ var proto={}; proto.startAnimation=function(){ if(this.isAnimating){ return; } this.isAnimating=true; this.restingFrames=0; this.animate(); }; proto.animate=function(){ this.applyDragForce(); this.applySelectedAttraction(); var previousX=this.x; this.integratePhysics(); this.positionSlider(); this.settle(previousX); if(this.isAnimating){ var _this=this; requestAnimationFrame(function animateFrame(){ _this.animate(); }); }}; proto.positionSlider=function(){ var x=this.x; if(this.options.wrapAround&&this.cells.length > 1){ x=utils.modulo(x, this.slideableWidth); x=x - this.slideableWidth; this.shiftWrapCells(x); } x=x + this.cursorPosition; x=this.options.rightToLeft ? -x:x; var value=this.getPositionValue(x); this.slider.style.transform=this.isAnimating ? 'translate3d(' + value + ',0,0)':'translateX(' + value + ')'; var firstSlide=this.slides[0]; if(firstSlide){ var positionX=-this.x - firstSlide.target; var progress=positionX / this.slidesWidth; this.dispatchEvent('scroll', null, [ progress, positionX ]); }}; proto.positionSliderAtSelected=function(){ if(!this.cells.length){ return; } this.x=-this.selectedSlide.target; this.velocity=0; this.positionSlider(); }; proto.getPositionValue=function(position){ if(this.options.percentPosition){ return(Math.round(( position / this.size.innerWidth) * 10000) * 0.01)+ '%'; }else{ return Math.round(position) + 'px'; }}; proto.settle=function(previousX){ if(!this.isPointerDown&&Math.round(this.x * 100)==Math.round(previousX * 100)){ this.restingFrames++; } if(this.restingFrames > 2){ this.isAnimating=false; delete this.isFreeScrolling; this.positionSlider(); this.dispatchEvent('settle', null, [ this.selectedIndex ]); }}; proto.shiftWrapCells=function(x){ var beforeGap=this.cursorPosition + x; this._shiftCells(this.beforeShiftCells, beforeGap, -1); var afterGap=this.size.innerWidth -(x + this.slideableWidth + this.cursorPosition); this._shiftCells(this.afterShiftCells, afterGap, 1); }; proto._shiftCells=function(cells, gap, shift){ for(var i=0; i < cells.length; i++){ var cell=cells[i]; var cellShift=gap > 0 ? shift:0; cell.wrapShift(cellShift); gap -=cell.size.outerWidth; }}; proto._unshiftCells=function(cells){ if(!cells||!cells.length){ return; } for(var i=0; i < cells.length; i++){ cells[i].wrapShift(0); }}; proto.integratePhysics=function(){ this.x +=this.velocity; this.velocity *=this.getFrictionFactor(); }; proto.applyForce=function(force){ this.velocity +=force; }; proto.getFrictionFactor=function(){ return 1 - this.options[ this.isFreeScrolling ? 'freeScrollFriction':'friction' ]; }; proto.getRestingPosition=function(){ return this.x + this.velocity /(1 - this.getFrictionFactor()); }; proto.applyDragForce=function(){ if(!this.isDraggable||!this.isPointerDown){ return; } var dragVelocity=this.dragX - this.x; var dragForce=dragVelocity - this.velocity; this.applyForce(dragForce); }; proto.applySelectedAttraction=function(){ var dragDown=this.isDraggable&&this.isPointerDown; if(dragDown||this.isFreeScrolling||!this.slides.length){ return; } var distance=this.selectedSlide.target * -1 - this.x; var force=distance * this.options.selectedAttraction; this.applyForce(force); }; return proto; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/flickity',[ 'ev-emitter/ev-emitter', 'get-size/get-size', 'fizzy-ui-utils/utils', './cell', './slide', './animate' ], function(EvEmitter, getSize, utils, Cell, Slide, animatePrototype){ return factory(window, EvEmitter, getSize, utils, Cell, Slide, animatePrototype); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('ev-emitter'), require('get-size'), require('fizzy-ui-utils'), require('./cell'), require('./slide'), require('./animate') ); }else{ var _Flickity=window.Flickity; window.Flickity=factory( window, window.EvEmitter, window.getSize, window.fizzyUIUtils, _Flickity.Cell, _Flickity.Slide, _Flickity.animatePrototype ); }}(window, function factory(window, EvEmitter, getSize, utils, Cell, Slide, animatePrototype){ var jQuery=window.jQuery; var getComputedStyle=window.getComputedStyle; var console=window.console; function moveElements(elems, toElem){ elems=utils.makeArray(elems); while(elems.length){ toElem.appendChild(elems.shift()); }} var GUID=0; var instances={}; function Flickity(element, options){ var queryElement=utils.getQueryElement(element); if(!queryElement){ if(console){ console.error('Bad element for Flickity: ' +(queryElement||element)); } return; } this.element=queryElement; if(this.element.flickityGUID){ var instance=instances[ this.element.flickityGUID ]; instance.option(options); return instance; } if(jQuery){ this.$element=jQuery(this.element); } this.options=utils.extend({}, this.constructor.defaults); this.option(options); this._create(); } Flickity.defaults={ accessibility: true, cellAlign: 'center', freeScrollFriction: 0.075, friction: 0.28, namespaceJQueryEvents: true, percentPosition: true, resize: true, selectedAttraction: 0.025, setGallerySize: true }; Flickity.createMethods=[]; var proto=Flickity.prototype; utils.extend(proto, EvEmitter.prototype); proto._create=function(){ var id=this.guid=++GUID; this.element.flickityGUID=id; instances[ id ]=this; this.selectedIndex=0; this.restingFrames=0; this.x=0; this.velocity=0; this.originSide=this.options.rightToLeft ? 'right':'left'; if(this.$element.hasClass('generate-markup')){ this.viewport=document.createElement('div'); this.viewport.className='flickity-viewport'; }else{ this.viewport=this.$element.find('.flickity-viewport')[0]; this.slider=this.$element.find('.flickity-slider')[0]; this.viewport.className='flickity-viewport'; } this._createSlider(); if(this.options.resize||this.options.watchCSS){ window.addEventListener('resize', this); } for(var eventName in this.options.on){ var listener=this.options.on[ eventName ]; this.on(eventName, listener); } Flickity.createMethods.forEach(function(method){ this[ method ](); }, this); if(this.options.watchCSS){ this.watchCSS(); }else{ this.activate(); }}; proto.option=function(opts){ utils.extend(this.options, opts); }; proto.activate=function(){ if(this.isActive){ return; } this.isActive=true; this.element.classList.add('flickity-enabled'); if(this.options.rightToLeft){ this.element.classList.add('flickity-rtl'); } this.getSize(); var cellElems=this._filterFindCellElements(this.element.children); if(this.$element.hasClass('generate-markup')){ moveElements(cellElems, this.slider); this.viewport.appendChild(this.slider); this.element.appendChild(this.viewport); }else{ } this.reloadCells(); if(this.options.accessibility){ this.element.tabIndex=0; this.element.addEventListener('keydown', this); } this.emitEvent('activate'); var index; var initialIndex=this.options.initialIndex; if(this.isInitActivated){ index=this.selectedIndex; }else if(initialIndex!==undefined){ index=this.cells[ initialIndex ] ? initialIndex:0; }else{ index=0; } this.select(index, false, true); this.isInitActivated=true; this.dispatchEvent('ready'); }; proto._createSlider=function(){ if(this.$element.hasClass('generate-markup')){ var slider=document.createElement('div'); slider.className='flickity-slider'; slider.style[ this.originSide ]=0; this.slider=slider; }else{ this.slider.style[ this.originSide ]=0; }}; proto._filterFindCellElements=function(elems){ return utils.filterFindElements(elems, this.options.cellSelector); }; proto.reloadCells=function(){ if(jQuery(this.slider).parent().parent().find('.flickity-page-dots').length > 0){ var $that=this; setTimeout(function(){ $that.pageDots.setDots(); },100); } var slidesArr=[]; jQuery(this.slider).find('> *').each(function(i){ slidesArr[i]=jQuery(this)[0]; }); this.cells=this._makeCells(slidesArr); this.positionCells(); this._getWrapShiftCells(); this.setGallerySize(); }; proto._makeCells=function(elems){ var cellElems=this._filterFindCellElements(elems); var cells=cellElems.map(function(cellElem){ return new Cell(cellElem, this); }, this); return cells; }; proto.getLastCell=function(){ return this.cells[ this.cells.length - 1 ]; }; proto.getLastSlide=function(){ return this.slides[ this.slides.length - 1 ]; }; proto.positionCells=function(){ this._sizeCells(this.cells); this._positionCells(0); }; proto._positionCells=function(index){ index=index||0; this.maxCellHeight=index ? this.maxCellHeight||0:0; var cellX=0; if(index > 0){ var startCell=this.cells[ index - 1 ]; cellX=startCell.x + startCell.size.outerWidth; } var len=this.cells.length; for(var i=index; i < len; i++){ var cell=this.cells[i]; cell.setPosition(cellX); cellX +=cell.size.outerWidth; this.maxCellHeight=Math.max(cell.size.outerHeight, this.maxCellHeight); } this.slideableWidth=cellX; this.updateSlides(); this._containSlides(); this.slidesWidth=len ? this.getLastSlide().target - this.slides[0].target:0; }; proto._sizeCells=function(cells){ cells.forEach(function(cell){ cell.getSize(); }); }; proto.updateSlides=function(){ this.slides=[]; if(!this.cells.length){ return; } var slide=new Slide(this); this.slides.push(slide); var isOriginLeft=this.originSide=='left'; var nextMargin=isOriginLeft ? 'marginRight':'marginLeft'; var canCellFit=this._getCanCellFit(); this.cells.forEach(function(cell, i){ if(!slide.cells.length){ slide.addCell(cell); return; } var slideWidth=(slide.outerWidth - slide.firstMargin) + (cell.size.outerWidth - cell.size[ nextMargin ]); if(canCellFit.call(this, i, slideWidth)){ slide.addCell(cell); }else{ slide.updateTarget(); slide=new Slide(this); this.slides.push(slide); slide.addCell(cell); }}, this); slide.updateTarget(); this.updateSelectedSlide(); }; proto._getCanCellFit=function(){ var groupCells=this.options.groupCells; if(!groupCells){ return function(){ return false; };}else if(typeof groupCells=='number'){ var number=parseInt(groupCells, 10); return function(i){ return(i % number)!==0; };} var percentMatch=typeof groupCells=='string' && groupCells.match(/^(\d+)%$/); var percent=percentMatch ? parseInt(percentMatch[1], 10) / 100:1; return function(i, slideWidth){ return slideWidth <=(this.size.innerWidth + 1) * percent; };}; proto._init = proto.reposition=function(){ this.positionCells(); this.positionSliderAtSelected(); }; proto.getSize=function(){ this.size=getSize(this.element); this.setCellAlign(); this.cursorPosition=this.size.innerWidth * this.cellAlign; }; var cellAlignShorthands={ center: { left: 0.5, right: 0.5 }, left: { left: 0, right: 1 }, right: { right: 0, left: 1 }}; proto.setCellAlign=function(){ var shorthand=cellAlignShorthands[ this.options.cellAlign ]; this.cellAlign=shorthand ? shorthand[ this.originSide ]:this.options.cellAlign; }; proto.setGallerySize=function(){ if(this.options.setGallerySize){ var height=this.options.adaptiveHeight&&this.selectedSlide ? this.selectedSlide.height:this.maxCellHeight; this.viewport.style.height=height + 'px'; }}; proto._getWrapShiftCells=function(){ if(!this.options.wrapAround){ return; } this._unshiftCells(this.beforeShiftCells); this._unshiftCells(this.afterShiftCells); var gapX=this.cursorPosition; var cellIndex=this.cells.length - 1; this.beforeShiftCells=this._getGapCells(gapX, cellIndex, -1); gapX=this.size.innerWidth - this.cursorPosition; this.afterShiftCells=this._getGapCells(gapX, 0, 1); }; proto._getGapCells=function(gapX, cellIndex, increment){ var cells=[]; while(gapX > 0){ var cell=this.cells[ cellIndex ]; if(!cell){ break; } cells.push(cell); cellIndex +=increment; gapX -=cell.size.outerWidth; } return cells; }; proto._containSlides=function(){ if(!this.options.contain||this.options.wrapAround||!this.cells.length){ return; } var isRightToLeft=this.options.rightToLeft; var beginMargin=isRightToLeft ? 'marginRight':'marginLeft'; var endMargin=isRightToLeft ? 'marginLeft':'marginRight'; var contentWidth=this.slideableWidth - this.getLastCell().size[ endMargin ]; var isContentSmaller=contentWidth < this.size.innerWidth; var beginBound=this.cursorPosition + this.cells[0].size[ beginMargin ]; var endBound=contentWidth - this.size.innerWidth *(1 - this.cellAlign); this.slides.forEach(function(slide){ if(isContentSmaller){ slide.target=contentWidth * this.cellAlign; }else{ slide.target=Math.max(slide.target, beginBound); slide.target=Math.min(slide.target, endBound); }}, this); }; proto.dispatchEvent=function(type, event, args){ var emitArgs=event ? [ event ].concat(args):args; this.emitEvent(type, emitArgs); if(jQuery&&this.$element){ type +=this.options.namespaceJQueryEvents ? '.flickity':''; var $event=type; if(event){ var jQEvent=jQuery.Event(event); jQEvent.type=type; $event=jQEvent; } this.$element.trigger($event, args); }}; proto.select=function(index, isWrap, isInstant){ if(!this.isActive){ return; } index=parseInt(index, 10); this._wrapSelect(index); if(this.options.wrapAround||isWrap){ index=utils.modulo(index, this.slides.length); } if(!this.slides[ index ]){ return; } var prevIndex=this.selectedIndex; this.selectedIndex=index; this.updateSelectedSlide(); if(isInstant){ this.positionSliderAtSelected(); }else{ this.startAnimation(); } if(this.options.adaptiveHeight){ this.setGallerySize(); } this.dispatchEvent('select', null, [ index ]); if(index!=prevIndex){ this.dispatchEvent('change', null, [ index ]); } this.dispatchEvent('cellSelect'); }; proto._wrapSelect=function(index){ var len=this.slides.length; var isWrapping=this.options.wrapAround&&len > 1; if(!isWrapping){ return index; } var wrapIndex=utils.modulo(index, len); var delta=Math.abs(wrapIndex - this.selectedIndex); var backWrapDelta=Math.abs(( wrapIndex + len) - this.selectedIndex); var forewardWrapDelta=Math.abs(( wrapIndex - len) - this.selectedIndex); if(!this.isDragSelect&&backWrapDelta < delta){ index +=len; }else if(!this.isDragSelect&&forewardWrapDelta < delta){ index -=len; } if(index < 0){ this.x -=this.slideableWidth; }else if(index >=len){ this.x +=this.slideableWidth; }}; proto.previous=function(isWrap, isInstant){ this.select(this.selectedIndex - 1, isWrap, isInstant); }; proto.next=function(isWrap, isInstant){ this.select(this.selectedIndex + 1, isWrap, isInstant); }; proto.updateSelectedSlide=function(){ var slide=this.slides[ this.selectedIndex ]; if(!slide){ return; } this.unselectSelectedSlide(); this.selectedSlide=slide; slide.select(); this.selectedCells=slide.cells; this.selectedElements=slide.getCellElements(); this.selectedCell=slide.cells[0]; this.selectedElement=this.selectedElements[0]; }; proto.unselectSelectedSlide=function(){ if(this.selectedSlide){ this.selectedSlide.unselect(); }}; proto.selectCell=function(value, isWrap, isInstant){ var cell=this.queryCell(value); if(!cell){ return; } var index=this.getCellSlideIndex(cell); this.select(index, isWrap, isInstant); }; proto.getCellSlideIndex=function(cell){ for(var i=0; i < this.slides.length; i++){ var slide=this.slides[i]; var index=slide.cells.indexOf(cell); if(index!=-1){ return i; }} }; proto.getCell=function(elem){ for(var i=0; i < this.cells.length; i++){ var cell=this.cells[i]; if(cell.element==elem){ return cell; }} }; proto.getCells=function(elems){ elems=utils.makeArray(elems); var cells=[]; elems.forEach(function(elem){ var cell=this.getCell(elem); if(cell){ cells.push(cell); }}, this); return cells; }; proto.getCellElements=function(){ return this.cells.map(function(cell){ return cell.element; }); }; proto.getParentCell=function(elem){ var cell=this.getCell(elem); if(cell){ return cell; } elem=utils.getParent(elem, '.flickity-slider > *'); return this.getCell(elem); }; proto.getAdjacentCellElements=function(adjCount, index){ if(!adjCount){ return this.selectedSlide.getCellElements(); } index=index===undefined ? this.selectedIndex:index; var len=this.slides.length; if(1 +(adjCount * 2) >=len){ return this.getCellElements(); } var cellElems=[]; for(var i=index - adjCount; i <=index + adjCount ; i++){ var slideIndex=this.options.wrapAround ? utils.modulo(i, len):i; var slide=this.slides[ slideIndex ]; if(slide){ cellElems=cellElems.concat(slide.getCellElements()); }} return cellElems; }; proto.queryCell=function(selector){ if(typeof selector=='number'){ return this.cells[ selector ]; } if(typeof selector=='string'){ selector=this.element.querySelector(selector); } return this.getCell(selector); }; proto.uiChange=function(){ this.emitEvent('uiChange'); }; proto.childUIPointerDown=function(event){ this.emitEvent('childUIPointerDown', [ event ]); }; proto.onresize=function(){ this.watchCSS(); this.resize(); }; utils.debounceMethod(Flickity, 'onresize', 150); proto.resize=function(){ if(!this.isActive){ return; } this.getSize(); if(this.options.wrapAround){ this.x=utils.modulo(this.x, this.slideableWidth); } this.positionCells(); this._getWrapShiftCells(); this.setGallerySize(); this.emitEvent('resize'); var selectedElement=this.selectedElements&&this.selectedElements[0]; this.selectCell(selectedElement, false, true); }; proto.watchCSS=function(){ var watchOption=this.options.watchCSS; if(!watchOption){ return; } var afterContent=getComputedStyle(this.element, ':after').content; if(afterContent.indexOf('flickity')!=-1){ this.activate(); }else{ this.deactivate(); }}; proto.onkeydown=function(event){ var isNotFocused=document.activeElement&&document.activeElement!=this.element; if(!this.options.accessibility||isNotFocused){ return; } var handler=Flickity.keyboardHandlers[ event.keyCode ]; if(handler){ handler.call(this); }}; Flickity.keyboardHandlers={ 37: function(){ var leftMethod=this.options.rightToLeft ? 'next':'previous'; this.uiChange(); this[ leftMethod ](); }, 39: function(){ var rightMethod=this.options.rightToLeft ? 'previous':'next'; this.uiChange(); this[ rightMethod ](); }, }; proto.focus=function(){ var prevScrollY=window.pageYOffset; this.element.focus({ preventScroll: true }); if(window.pageYOffset!=prevScrollY){ window.scrollTo(window.pageXOffset, prevScrollY); }}; proto.deactivate=function(){ if(!this.isActive){ return; } this.element.classList.remove('flickity-enabled'); this.element.classList.remove('flickity-rtl'); this.unselectSelectedSlide(); this.cells.forEach(function(cell){ cell.destroy(); }); this.element.removeChild(this.viewport); moveElements(this.slider.children, this.element); if(this.options.accessibility){ this.element.removeAttribute('tabIndex'); this.element.removeEventListener('keydown', this); } this.isActive=false; this.emitEvent('deactivate'); }; proto.destroy=function(){ this.deactivate(); window.removeEventListener('resize', this); this.emitEvent('destroy'); if(jQuery&&this.$element){ jQuery.removeData(this.element, 'flickity'); } delete this.element.flickityGUID; delete instances[ this.guid ]; }; utils.extend(proto, animatePrototype); Flickity.data=function(elem){ elem=utils.getQueryElement(elem); var id=elem&&elem.flickityGUID; return id&&instances[ id ]; }; utils.htmlInit(Flickity, 'flickity'); if(jQuery&&jQuery.bridget){ jQuery.bridget('flickity', Flickity); } Flickity.setJQuery=function(jq){ jQuery=jq; }; Flickity.Cell=Cell; return Flickity; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('unipointer/unipointer',[ 'ev-emitter/ev-emitter' ], function(EvEmitter){ return factory(window, EvEmitter); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('ev-emitter') ); }else{ window.Unipointer=factory( window, window.EvEmitter ); }}(window, function factory(window, EvEmitter){ function noop(){} function Unipointer(){} var proto=Unipointer.prototype=Object.create(EvEmitter.prototype); proto.bindStartEvent=function(elem){ this._bindStartEvent(elem, true); }; proto.unbindStartEvent=function(elem){ this._bindStartEvent(elem, false); }; proto._bindStartEvent=function(elem, isAdd){ isAdd=isAdd===undefined ? true:isAdd; var bindMethod=isAdd ? 'addEventListener':'removeEventListener'; var startEvent='mousedown'; if(window.PointerEvent){ startEvent='pointerdown'; }else if('ontouchstart' in window){ startEvent='touchstart'; } elem[ bindMethod ](startEvent, this); }; proto.handleEvent=function(event){ var method='on' + event.type; if(this[ method ]){ this[ method ](event); }}; proto.getTouch=function(touches){ for(var i=0; i < touches.length; i++){ var touch=touches[i]; if(touch.identifier==this.pointerIdentifier){ return touch; }} }; proto.onmousedown=function(event){ var button=event.button; if(button&&(button!==0&&button!==1)){ return; } this._pointerDown(event, event); }; proto.ontouchstart=function(event){ this._pointerDown(event, event.changedTouches[0]); }; proto.onpointerdown=function(event){ this._pointerDown(event, event); }; proto._pointerDown=function(event, pointer){ if(event.button||this.isPointerDown){ return; } this.isPointerDown=true; this.pointerIdentifier=pointer.pointerId!==undefined ? pointer.pointerId:pointer.identifier; this.pointerDown(event, pointer); }; proto.pointerDown=function(event, pointer){ this._bindPostStartEvents(event); this.emitEvent('pointerDown', [ event, pointer ]); }; var postStartEvents={ mousedown: [ 'mousemove', 'mouseup' ], touchstart: [ 'touchmove', 'touchend', 'touchcancel' ], pointerdown: [ 'pointermove', 'pointerup', 'pointercancel' ], }; proto._bindPostStartEvents=function(event){ if(!event){ return; } var events=postStartEvents[ event.type ]; events.forEach(function(eventName){ window.addEventListener(eventName, this); }, this); this._boundPointerEvents=events; }; proto._unbindPostStartEvents=function(){ if(!this._boundPointerEvents){ return; } this._boundPointerEvents.forEach(function(eventName){ window.removeEventListener(eventName, this); }, this); delete this._boundPointerEvents; }; proto.onmousemove=function(event){ this._pointerMove(event, event); }; proto.onpointermove=function(event){ if(event.pointerId==this.pointerIdentifier){ this._pointerMove(event, event); }}; proto.ontouchmove=function(event){ var touch=this.getTouch(event.changedTouches); if(touch){ this._pointerMove(event, touch); }}; proto._pointerMove=function(event, pointer){ this.pointerMove(event, pointer); }; proto.pointerMove=function(event, pointer){ this.emitEvent('pointerMove', [ event, pointer ]); }; proto.onmouseup=function(event){ this._pointerUp(event, event); }; proto.onpointerup=function(event){ if(event.pointerId==this.pointerIdentifier){ this._pointerUp(event, event); }}; proto.ontouchend=function(event){ var touch=this.getTouch(event.changedTouches); if(touch){ this._pointerUp(event, touch); }}; proto._pointerUp=function(event, pointer){ this._pointerDone(); this.pointerUp(event, pointer); }; proto.pointerUp=function(event, pointer){ this.emitEvent('pointerUp', [ event, pointer ]); }; proto._pointerDone=function(){ this._pointerReset(); this._unbindPostStartEvents(); this.pointerDone(); }; proto._pointerReset=function(){ this.isPointerDown=false; delete this.pointerIdentifier; }; proto.pointerDone=noop; proto.onpointercancel=function(event){ if(event.pointerId==this.pointerIdentifier){ this._pointerCancel(event, event); }}; proto.ontouchcancel=function(event){ var touch=this.getTouch(event.changedTouches); if(touch){ this._pointerCancel(event, touch); }}; proto._pointerCancel=function(event, pointer){ this._pointerDone(); this.pointerCancel(event, pointer); }; proto.pointerCancel=function(event, pointer){ this.emitEvent('pointerCancel', [ event, pointer ]); }; Unipointer.getPointerPoint=function(pointer){ return { x: pointer.pageX, y: pointer.pageY };}; return Unipointer; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('unidragger/unidragger',[ 'unipointer/unipointer' ], function(Unipointer){ return factory(window, Unipointer); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('unipointer') ); }else{ window.Unidragger=factory( window, window.Unipointer ); }}(window, function factory(window, Unipointer){ function Unidragger(){} var proto=Unidragger.prototype=Object.create(Unipointer.prototype); proto.bindHandles=function(){ this._bindHandles(true); }; proto.unbindHandles=function(){ this._bindHandles(false); }; proto._bindHandles=function(isAdd){ isAdd=isAdd===undefined ? true:isAdd; var bindMethod=isAdd ? 'addEventListener':'removeEventListener'; var touchAction=isAdd ? this._touchActionValue:''; for(var i=0; i < this.handles.length; i++){ var handle=this.handles[i]; this._bindStartEvent(handle, isAdd); handle[ bindMethod ]('click', this); if(window.PointerEvent){ handle.style.touchAction=touchAction; }} }; proto._touchActionValue='none'; proto.pointerDown=function(event, pointer){ var isOkay=this.okayPointerDown(event); if(!isOkay){ return; } this.pointerDownPointer=pointer; event.preventDefault(); this.pointerDownBlur(); this._bindPostStartEvents(event); this.emitEvent('pointerDown', [ event, pointer ]); }; var cursorNodes={ TEXTAREA: true, INPUT: true, SELECT: true, OPTION: true, }; var clickTypes={ radio: true, checkbox: true, button: true, submit: true, image: true, file: true, }; proto.okayPointerDown=function(event){ var isCursorNode=cursorNodes[ event.target.nodeName ]; var isClickType=clickTypes[ event.target.type ]; var isOkay = !isCursorNode||isClickType; if(!isOkay){ this._pointerReset(); } return isOkay; }; proto.pointerDownBlur=function(){ var focused=document.activeElement; var canBlur=focused&&focused.blur&&focused!=document.body; if(canBlur){ focused.blur(); }}; proto.pointerMove=function(event, pointer){ var moveVector=this._dragPointerMove(event, pointer); this.emitEvent('pointerMove', [ event, pointer, moveVector ]); this._dragMove(event, pointer, moveVector); }; proto._dragPointerMove=function(event, pointer){ var moveVector={ x: pointer.pageX - this.pointerDownPointer.pageX, y: pointer.pageY - this.pointerDownPointer.pageY }; if(!this.isDragging&&this.hasDragStarted(moveVector)){ this._dragStart(event, pointer); } return moveVector; }; proto.hasDragStarted=function(moveVector){ return Math.abs(moveVector.x) > 3||Math.abs(moveVector.y) > 3; }; proto.pointerUp=function(event, pointer){ this.emitEvent('pointerUp', [ event, pointer ]); this._dragPointerUp(event, pointer); }; proto._dragPointerUp=function(event, pointer){ if(this.isDragging){ this._dragEnd(event, pointer); }else{ this._staticClick(event, pointer); }}; proto._dragStart=function(event, pointer){ this.isDragging=true; this.isPreventingClicks=true; this.dragStart(event, pointer); }; proto.dragStart=function(event, pointer){ this.emitEvent('dragStart', [ event, pointer ]); }; proto._dragMove=function(event, pointer, moveVector){ if(!this.isDragging){ return; } this.dragMove(event, pointer, moveVector); }; proto.dragMove=function(event, pointer, moveVector){ event.preventDefault(); this.emitEvent('dragMove', [ event, pointer, moveVector ]); }; proto._dragEnd=function(event, pointer){ this.isDragging=false; setTimeout(function(){ delete this.isPreventingClicks; }.bind(this)); this.dragEnd(event, pointer); }; proto.dragEnd=function(event, pointer){ this.emitEvent('dragEnd', [ event, pointer ]); }; proto.onclick=function(event){ if(this.isPreventingClicks){ event.preventDefault(); }}; proto._staticClick=function(event, pointer){ if(this.isIgnoringMouseUp&&event.type=='mouseup'){ return; } this.staticClick(event, pointer); if(event.type!='mouseup'){ this.isIgnoringMouseUp=true; setTimeout(function(){ delete this.isIgnoringMouseUp; }.bind(this), 400); }}; proto.staticClick=function(event, pointer){ this.emitEvent('staticClick', [ event, pointer ]); }; Unidragger.getPointerPoint=Unipointer.getPointerPoint; return Unidragger; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/drag',[ './flickity', 'unidragger/unidragger', 'fizzy-ui-utils/utils' ], function(Flickity, Unidragger, utils){ return factory(window, Flickity, Unidragger, utils); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('./flickity'), require('unidragger'), require('fizzy-ui-utils') ); }else{ window.Flickity=factory( window, window.Flickity, window.Unidragger, window.fizzyUIUtils ); }}(window, function factory(window, Flickity, Unidragger, utils){ utils.extend(Flickity.defaults, { draggable: '>1', dragThreshold: 3, }); Flickity.createMethods.push('_createDrag'); var proto=Flickity.prototype; utils.extend(proto, Unidragger.prototype); proto._touchActionValue='pan-y'; var isTouch='createTouch' in document; var isTouchmoveScrollCanceled=false; proto._createDrag=function(){ this.on('activate', this.onActivateDrag); this.on('uiChange', this._uiChangeDrag); this.on('childUIPointerDown', this._childUIPointerDownDrag); this.on('deactivate', this.onDeactivateDrag); this.on('cellChange', this.updateDraggable); if(isTouch&&!isTouchmoveScrollCanceled){ window.addEventListener('touchmove', function(){}); isTouchmoveScrollCanceled=true; }}; proto.onActivateDrag=function(){ this.handles=[ this.viewport ]; this.bindHandles(); this.updateDraggable(); }; proto.onDeactivateDrag=function(){ this.unbindHandles(); this.element.classList.remove('is-draggable'); }; proto.updateDraggable=function(){ if(this.options.draggable=='>1'){ this.isDraggable=this.slides.length > 1; }else{ this.isDraggable=this.options.draggable; } if(this.isDraggable){ this.element.classList.add('is-draggable'); }else{ this.element.classList.remove('is-draggable'); }}; proto.bindDrag=function(){ this.options.draggable=true; this.updateDraggable(); }; proto.unbindDrag=function(){ this.options.draggable=false; this.updateDraggable(); }; proto._uiChangeDrag=function(){ delete this.isFreeScrolling; }; proto._childUIPointerDownDrag=function(event){ event.preventDefault(); this.pointerDownFocus(event); }; proto.pointerDown=function(event, pointer){ if(!this.isDraggable){ this._pointerDownDefault(event, pointer); return; } var isOkay=this.okayPointerDown(event); if(!isOkay){ return; } this._pointerDownPreventDefault(event); this.pointerDownFocus(event); if(document.activeElement!=this.element){ this.pointerDownBlur(); } this.dragX=this.x; this.viewport.classList.add('is-pointer-down'); this.pointerDownScroll=getScrollPosition(); window.addEventListener('scroll', this); this._pointerDownDefault(event, pointer); }; proto._pointerDownDefault=function(event, pointer){ this.pointerDownPointer=pointer; this._bindPostStartEvents(event); this.dispatchEvent('pointerDown', event, [ pointer ]); }; var focusNodes={ INPUT: true, TEXTAREA: true, SELECT: true, }; proto.pointerDownFocus=function(event){ var isFocusNode=focusNodes[ event.target.nodeName ]; if(!isFocusNode){ this.focus(); }}; proto._pointerDownPreventDefault=function(event){ var isTouchStart=event.type=='touchstart'; var isTouchPointer=event.pointerType=='touch'; var isFocusNode=focusNodes[ event.target.nodeName ]; if(!isTouchStart&&!isTouchPointer&&!isFocusNode){ event.preventDefault(); }}; proto.hasDragStarted=function(moveVector){ return Math.abs(moveVector.x) > this.options.dragThreshold; }; proto.pointerUp=function(event, pointer){ delete this.isTouchScrolling; this.viewport.classList.remove('is-pointer-down'); this.dispatchEvent('pointerUp', event, [ pointer ]); this._dragPointerUp(event, pointer); }; proto.pointerDone=function(){ window.removeEventListener('scroll', this); delete this.pointerDownScroll; }; proto.dragStart=function(event, pointer){ if(!this.isDraggable){ return; } this.dragStartPosition=this.x; this.startAnimation(); window.removeEventListener('scroll', this); this.dispatchEvent('dragStart', event, [ pointer ]); }; proto.pointerMove=function(event, pointer){ var moveVector=this._dragPointerMove(event, pointer); this.dispatchEvent('pointerMove', event, [ pointer, moveVector ]); this._dragMove(event, pointer, moveVector); }; proto.dragMove=function(event, pointer, moveVector){ if(!this.isDraggable){ return; } event.preventDefault(); var direction=this.options.rightToLeft ? -1:1; if(this.options.wrapAround){ moveVector.x=moveVector.x % this.slideableWidth; } var dragX=this.dragStartPosition + moveVector.x * direction; if(!this.options.wrapAround&&this.slides.length){ var originBound=Math.max(-this.slides[0].target, this.dragStartPosition); dragX=dragX > originBound ?(dragX + originBound) * 0.5:dragX; var endBound=Math.min(-this.getLastSlide().target, this.dragStartPosition); dragX=dragX < endBound ?(dragX + endBound) * 0.5:dragX; } if(this.dragX!==dragX){ this.previousDragX=this.dragX; } this.dragX=dragX; this.dragMoveTime=new Date(); this.dispatchEvent('dragMove', event, [ pointer, moveVector ]); }; proto.dragEnd=function(event, pointer){ if(!this.isDraggable){ return; } if(this.options.freeScroll){ this.isFreeScrolling=true; } var index=this.dragEndRestingSelect(); if(this.options.freeScroll&&!this.options.wrapAround){ var restingX=this.getRestingPosition(); this.isFreeScrolling=-restingX > this.slides[0].target && -restingX < this.getLastSlide().target; }else if(!this.options.freeScroll&&index==this.selectedIndex){ index +=this.dragEndBoostSelect(); } delete this.previousDragX; this.isDragSelect=this.options.wrapAround; this.select(index); delete this.isDragSelect; this.dispatchEvent('dragEnd', event, [ pointer ]); }; proto.dragEndRestingSelect=function(){ var restingX=this.getRestingPosition(); var distance=Math.abs(this.getSlideDistance(-restingX, this.selectedIndex)); var positiveResting=this._getClosestResting(restingX, distance, 1); var negativeResting=this._getClosestResting(restingX, distance, -1); var index=positiveResting.distance < negativeResting.distance ? positiveResting.index:negativeResting.index; return index; }; proto._getClosestResting=function(restingX, distance, increment){ var index=this.selectedIndex; var minDistance=Infinity; var condition=this.options.contain&&!this.options.wrapAround ? function(d, md){ return d <=md; }:function(d, md){ return d < md; }; while(condition(distance, minDistance)){ index +=increment; minDistance=distance; distance=this.getSlideDistance(-restingX, index); if(distance===null){ break; } distance=Math.abs(distance); } return { distance: minDistance, index: index - increment };}; proto.getSlideDistance=function(x, index){ var len=this.slides.length; var isWrapAround=this.options.wrapAround&&len > 1; var slideIndex=isWrapAround ? utils.modulo(index, len):index; var slide=this.slides[ slideIndex ]; if(!slide){ return null; } var wrap=isWrapAround ? this.slideableWidth * Math.floor(index / len):0; return x -(slide.target + wrap); }; proto.dragEndBoostSelect=function(){ if(this.previousDragX===undefined||!this.dragMoveTime || new Date() - this.dragMoveTime > 100){ return 0; } var distance=this.getSlideDistance(-this.dragX, this.selectedIndex); var delta=this.previousDragX - this.dragX; if(distance > 0&&delta > 0){ return 1; }else if(distance < 0&&delta < 0){ return -1; } return 0; }; proto.staticClick=function(event, pointer){ var clickedCell=this.getParentCell(event.target); var cellElem=clickedCell&&clickedCell.element; var cellIndex=clickedCell&&this.cells.indexOf(clickedCell); this.dispatchEvent('staticClick', event, [ pointer, cellElem, cellIndex ]); }; proto.onscroll=function(){ var scroll=getScrollPosition(); var scrollMoveX=this.pointerDownScroll.x - scroll.x; var scrollMoveY=this.pointerDownScroll.y - scroll.y; if(Math.abs(scrollMoveX) > 3||Math.abs(scrollMoveY) > 3){ this._pointerDone(); }}; function getScrollPosition(){ return { x: window.pageXOffset, y: window.pageYOffset };} return Flickity; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('tap-listener/tap-listener',[ 'unipointer/unipointer' ], function(Unipointer){ return factory(window, Unipointer); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('unipointer') ); }else{ window.TapListener=factory( window, window.Unipointer ); }}(window, function factory(window, Unipointer){ function TapListener(elem){ this.bindTap(elem); } var proto=TapListener.prototype=Object.create(Unipointer.prototype); proto.bindTap=function(elem){ if(!elem){ return; } this.unbindTap(); this.tapElement=elem; this._bindStartEvent(elem, true); }; proto.unbindTap=function(){ if(!this.tapElement){ return; } this._bindStartEvent(this.tapElement, true); delete this.tapElement; }; proto.pointerUp=function(event, pointer){ if(this.isIgnoringMouseUp&&event.type=='mouseup'){ return; } var pointerPoint=Unipointer.getPointerPoint(pointer); var boundingRect=this.tapElement.getBoundingClientRect(); var scrollX=window.pageXOffset; var scrollY=window.pageYOffset; var isInside=pointerPoint.x >=boundingRect.left + scrollX && pointerPoint.x <=boundingRect.right + scrollX && pointerPoint.y >=boundingRect.top + scrollY && pointerPoint.y <=boundingRect.bottom + scrollY; if(isInside){ this.emitEvent('tap', [ event, pointer ]); } if(event.type!='mouseup'){ this.isIgnoringMouseUp=true; var _this=this; setTimeout(function(){ delete _this.isIgnoringMouseUp; }, 400); }}; proto.destroy=function(){ this.pointerDone(); this.unbindTap(); }; return TapListener; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/prev-next-button',[ './flickity', 'tap-listener/tap-listener', 'fizzy-ui-utils/utils' ], function(Flickity, TapListener, utils){ return factory(window, Flickity, TapListener, utils); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('./flickity'), require('tap-listener'), require('fizzy-ui-utils') ); }else{ factory( window, window.Flickity, window.TapListener, window.fizzyUIUtils ); }}(window, function factory(window, Flickity, TapListener, utils){ 'use strict'; var svgURI='http://www.w3.org/2000/svg'; function PrevNextButton(direction, parent){ this.direction=direction; this.parent=parent; this._create(); } PrevNextButton.prototype=Object.create(TapListener.prototype); PrevNextButton.prototype._create=function(){ this.isEnabled=true; this.isPrevious=this.direction==-1; var leftDirection=this.parent.options.rightToLeft ? 1:-1; this.isLeft=this.direction==leftDirection; var element=this.element=document.createElement('button'); element.className='flickity-button flickity-prev-next-button'; element.className +=this.isPrevious ? ' previous':' next'; element.setAttribute('type', 'button'); this.disable(); element.setAttribute('aria-label', this.isPrevious ? 'Previous':'Next'); var svg=this.createSVG(); element.appendChild(svg); this.on('tap', this.onTap); this.parent.on('select', this.update.bind(this)); this.on('pointerDown', this.parent.childUIPointerDown.bind(this.parent)); }; PrevNextButton.prototype.activate=function(){ this.bindTap(this.element); this.element.addEventListener('click', this); this.parent.element.appendChild(this.element); }; PrevNextButton.prototype.deactivate=function(){ this.parent.element.removeChild(this.element); TapListener.prototype.destroy.call(this); this.element.removeEventListener('click', this); }; PrevNextButton.prototype.createSVG=function(){ var svg=document.createElementNS(svgURI, 'svg'); svg.setAttribute('class', 'flickity-button-icon'); svg.setAttribute('viewBox', '0 0 100 100'); var path=document.createElementNS(svgURI, 'path'); var pathMovements=getArrowMovements(this.parent.options.arrowShape); path.setAttribute('d', pathMovements); path.setAttribute('class', 'arrow'); if(!this.isLeft){ path.setAttribute('transform', 'translate(100, 100) rotate(180) '); } svg.appendChild(path); return svg; }; function getArrowMovements(shape){ if(typeof shape=='string'){ return shape; } return 'M ' + shape.x0 + ',50' + ' L ' + shape.x1 + ',' +(shape.y1 + 50) + ' L ' + shape.x2 + ',' +(shape.y2 + 50) + ' L ' + shape.x3 + ',50 ' + ' L ' + shape.x2 + ',' +(50 - shape.y2) + ' L ' + shape.x1 + ',' +(50 - shape.y1) + ' Z'; } PrevNextButton.prototype.onTap=function(){ if(!this.isEnabled){ return; } this.parent.uiChange(); var method=this.isPrevious ? 'previous':'next'; this.parent[ method ](); }; PrevNextButton.prototype.handleEvent=utils.handleEvent; PrevNextButton.prototype.onclick=function(event){ var focused=document.activeElement; if(focused&&focused==this.element){ this.onTap(event, event); }}; PrevNextButton.prototype.enable=function(){ if(this.isEnabled){ return; } this.element.disabled=false; this.isEnabled=true; }; PrevNextButton.prototype.disable=function(){ if(!this.isEnabled){ return; } this.element.disabled=true; this.isEnabled=false; }; PrevNextButton.prototype.update=function(){ var slides=this.parent.slides; if(this.parent.options.wrapAround&&slides.length > 1){ this.enable(); return; } var lastIndex=slides.length ? slides.length - 1:0; var boundIndex=this.isPrevious ? 0:lastIndex; var method=this.parent.selectedIndex==boundIndex ? 'disable':'enable'; this[ method ](); }; PrevNextButton.prototype.destroy=function(){ this.deactivate(); }; utils.extend(Flickity.defaults, { prevNextButtons: true, arrowShape: { x0: 10, x1: 60, y1: 50, x2: 70, y2: 40, x3: 30 }}); Flickity.createMethods.push('_createPrevNextButtons'); var proto=Flickity.prototype; proto._createPrevNextButtons=function(){ if(!this.options.prevNextButtons){ return; } this.prevButton=new PrevNextButton(-1, this); this.nextButton=new PrevNextButton(1, this); this.on('activate', this.activatePrevNextButtons); }; proto.activatePrevNextButtons=function(){ this.prevButton.activate(); this.nextButton.activate(); this.on('deactivate', this.deactivatePrevNextButtons); }; proto.deactivatePrevNextButtons=function(){ this.prevButton.deactivate(); this.nextButton.deactivate(); this.off('deactivate', this.deactivatePrevNextButtons); }; Flickity.PrevNextButton=PrevNextButton; return Flickity; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/page-dots',[ './flickity', 'tap-listener/tap-listener', 'fizzy-ui-utils/utils' ], function(Flickity, TapListener, utils){ return factory(window, Flickity, TapListener, utils); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('./flickity'), require('tap-listener'), require('fizzy-ui-utils') ); }else{ factory( window, window.Flickity, window.TapListener, window.fizzyUIUtils ); }}(window, function factory(window, Flickity, TapListener, utils){ function PageDots(parent){ this.parent=parent; this._create(); } PageDots.prototype=new TapListener(); PageDots.prototype._create=function(){ this.holder=document.createElement('ol'); this.holder.className='flickity-page-dots'; this.dots=[]; this.on('tap', this.onTap); this.on('pointerDown', this.parent.childUIPointerDown.bind(this.parent)); }; PageDots.prototype.activate=function(){ this.setDots(); this.bindTap(this.holder); this.parent.element.appendChild(this.holder); }; PageDots.prototype.deactivate=function(){ this.parent.element.removeChild(this.holder); TapListener.prototype.destroy.call(this); }; PageDots.prototype.setDots=function(){ var delta=this.parent.slides.length - this.dots.length; if(delta > 0){ this.addDots(delta); }else if(delta < 0){ this.removeDots(-delta); }}; PageDots.prototype.addDots=function(count){ var fragment=document.createDocumentFragment(); var newDots=[]; var length=this.dots.length; var max=length + count; for(var i=length; i < max; i++){ var dot=document.createElement('li'); dot.className='dot'; dot.setAttribute('aria-label', 'Page dot ' +(i + 1)); fragment.appendChild(dot); newDots.push(dot); } this.holder.appendChild(fragment); this.dots=this.dots.concat(newDots); }; PageDots.prototype.removeDots=function(count){ var removeDots=this.dots.splice(this.dots.length - count, count); removeDots.forEach(function(dot){ this.holder.removeChild(dot); }, this); }; PageDots.prototype.updateSelected=function(){ if(this.selectedDot){ this.selectedDot.className='dot'; this.selectedDot.removeAttribute('aria-current'); } if(!this.dots.length){ return; } this.selectedDot=this.dots[ this.parent.selectedIndex ]; this.selectedDot.className='dot is-selected'; this.selectedDot.setAttribute('aria-current', 'step'); }; PageDots.prototype.onTap=function(event){ var target=event.target; if(target.nodeName!='LI'){ return; } this.parent.uiChange(); var index=this.dots.indexOf(target); this.parent.select(index); }; PageDots.prototype.destroy=function(){ this.deactivate(); }; Flickity.PageDots=PageDots; utils.extend(Flickity.defaults, { pageDots: true }); Flickity.createMethods.push('_createPageDots'); var proto=Flickity.prototype; proto._createPageDots=function(){ if(!this.options.pageDots){ return; } this.pageDots=new PageDots(this); this.on('activate', this.activatePageDots); this.on('select', this.updateSelectedPageDots); this.on('cellChange', this.updatePageDots); this.on('resize', this.updatePageDots); this.on('deactivate', this.deactivatePageDots); }; proto.activatePageDots=function(){ this.pageDots.activate(); }; proto.updateSelectedPageDots=function(){ this.pageDots.updateSelected(); }; proto.updatePageDots=function(){ this.pageDots.setDots(); }; proto.deactivatePageDots=function(){ this.pageDots.deactivate(); }; Flickity.PageDots=PageDots; return Flickity; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/player',[ 'ev-emitter/ev-emitter', 'fizzy-ui-utils/utils', './flickity' ], function(EvEmitter, utils, Flickity){ return factory(EvEmitter, utils, Flickity); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( require('ev-emitter'), require('fizzy-ui-utils'), require('./flickity') ); }else{ factory( window.EvEmitter, window.fizzyUIUtils, window.Flickity ); }}(window, function factory(EvEmitter, utils, Flickity){ function Player(parent){ this.parent=parent; this.state='stopped'; this.onVisibilityChange=this.visibilityChange.bind(this); this.onVisibilityPlay=this.visibilityPlay.bind(this); } Player.prototype=Object.create(EvEmitter.prototype); Player.prototype.play=function(){ if(this.state=='playing'){ return; } var isPageHidden=document.hidden; if(isPageHidden){ document.addEventListener('visibilitychange', this.onVisibilityPlay); return; } this.state='playing'; document.addEventListener('visibilitychange', this.onVisibilityChange); this.tick(); }; Player.prototype.tick=function(){ if(this.state!='playing'){ return; } var time=this.parent.options.autoPlay; time=typeof time=='number' ? time:3000; var _this=this; this.clear(); this.timeout=setTimeout(function(){ _this.parent.next(true); _this.tick(); }, time); }; Player.prototype.stop=function(){ this.state='stopped'; this.clear(); document.removeEventListener('visibilitychange', this.onVisibilityChange); }; Player.prototype.clear=function(){ clearTimeout(this.timeout); }; Player.prototype.pause=function(){ if(this.state=='playing'){ this.state='paused'; this.clear(); }}; Player.prototype.unpause=function(){ if(this.state=='paused'){ this.play(); }}; Player.prototype.visibilityChange=function(){ var isPageHidden=document.hidden; this[ isPageHidden ? 'pause':'unpause' ](); }; Player.prototype.visibilityPlay=function(){ this.play(); document.removeEventListener('visibilitychange', this.onVisibilityPlay); }; utils.extend(Flickity.defaults, { pauseAutoPlayOnHover: true }); Flickity.createMethods.push('_createPlayer'); var proto=Flickity.prototype; proto._createPlayer=function(){ this.player=new Player(this); this.on('activate', this.activatePlayer); this.on('uiChange', this.stopPlayer); this.on('pointerDown', this.stopPlayer); this.on('deactivate', this.deactivatePlayer); }; proto.activatePlayer=function(){ if(!this.options.autoPlay){ return; } this.player.play(); this.element.addEventListener('mouseenter', this); }; proto.playPlayer=function(){ this.player.play(); }; proto.stopPlayer=function(){ this.player.stop(); }; proto.pausePlayer=function(){ this.player.pause(); }; proto.unpausePlayer=function(){ this.player.unpause(); }; proto.deactivatePlayer=function(){ this.player.stop(); this.element.removeEventListener('mouseenter', this); }; proto.onmouseenter=function(){ if(!this.options.pauseAutoPlayOnHover){ return; } this.player.pause(); this.element.addEventListener('mouseleave', this); }; proto.onmouseleave=function(){ this.player.unpause(); this.element.removeEventListener('mouseleave', this); }; Flickity.Player=Player; return Flickity; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/add-remove-cell',[ './flickity', 'fizzy-ui-utils/utils' ], function(Flickity, utils){ return factory(window, Flickity, utils); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('./flickity'), require('fizzy-ui-utils') ); }else{ factory( window, window.Flickity, window.fizzyUIUtils ); }}(window, function factory(window, Flickity, utils){ function getCellsFragment(cells){ var fragment=document.createDocumentFragment(); cells.forEach(function(cell){ fragment.appendChild(cell.element); }); return fragment; } var proto=Flickity.prototype; proto.insert=function(elems, index){ var cells=this._makeCells(elems); if(!cells||!cells.length){ return; } var len=this.cells.length; index=index===undefined ? len:index; var fragment=getCellsFragment(cells); var isAppend=index==len; if(isAppend){ this.slider.appendChild(fragment); }else{ var insertCellElement=this.cells[ index ].element; this.slider.insertBefore(fragment, insertCellElement); } if(index===0){ this.cells=cells.concat(this.cells); }else if(isAppend){ this.cells=this.cells.concat(cells); }else{ var endCells=this.cells.splice(index, len - index); this.cells=this.cells.concat(cells).concat(endCells); } this._sizeCells(cells); this.cellChange(index, true); }; proto.append=function(elems){ this.insert(elems, this.cells.length); }; proto.prepend=function(elems){ this.insert(elems, 0); }; proto.remove=function(elems){ var cells=this.getCells(elems); if(!cells||!cells.length){ return; } var minCellIndex=this.cells.length - 1; cells.forEach(function(cell){ cell.remove(); var index=this.cells.indexOf(cell); minCellIndex=Math.min(index, minCellIndex); utils.removeFrom(this.cells, cell); }, this); this.cellChange(minCellIndex, true); }; proto.cellSizeChange=function(elem){ var cell=this.getCell(elem); if(!cell){ return; } cell.getSize(); var index=this.cells.indexOf(cell); this.cellChange(index); }; proto.cellChange=function(changedCellIndex, isPositioningSlider){ var prevSelectedElem=this.selectedElement; this._positionCells(changedCellIndex); this._getWrapShiftCells(); this.setGallerySize(); var cell=this.getCell(prevSelectedElem); if(cell){ this.selectedIndex=this.getCellSlideIndex(cell); } this.selectedIndex=Math.min(this.slides.length - 1, this.selectedIndex); this.emitEvent('cellChange', [ changedCellIndex ]); this.select(this.selectedIndex); if(isPositioningSlider){ this.positionSliderAtSelected(); }}; return Flickity; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/lazyload',[ './flickity', 'fizzy-ui-utils/utils' ], function(Flickity, utils){ return factory(window, Flickity, utils); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('./flickity'), require('fizzy-ui-utils') ); }else{ factory( window, window.Flickity, window.fizzyUIUtils ); }}(window, function factory(window, Flickity, utils){ 'use strict'; Flickity.createMethods.push('_createLazyload'); var proto=Flickity.prototype; proto._createLazyload=function(){ this.on('select', this.lazyLoad); }; proto.lazyLoad=function(){ var lazyLoad=this.options.lazyLoad; if(!lazyLoad){ return; } var adjCount=typeof lazyLoad=='number' ? lazyLoad:0; var cellElems=this.getAdjacentCellElements(adjCount); var lazyImages=[]; cellElems.forEach(function(cellElem){ var lazyCellImages=getCellLazyImages(cellElem); lazyImages=lazyImages.concat(lazyCellImages); }); lazyImages.forEach(function(img){ new LazyLoader(img, this); }, this); }; function getCellLazyImages(cellElem){ if(cellElem.nodeName=='IMG'){ var lazyloadAttr=cellElem.getAttribute('data-flickity-lazyload'); var srcAttr=cellElem.getAttribute('data-flickity-lazyload-src'); var srcsetAttr=cellElem.getAttribute('data-flickity-lazyload-srcset'); if(lazyloadAttr||srcAttr||srcsetAttr){ return [ cellElem ]; }} var lazySelector='img[data-flickity-lazyload], ' + 'img[data-flickity-lazyload-src], img[data-flickity-lazyload-srcset]'; var imgs=cellElem.querySelectorAll(lazySelector); return utils.makeArray(imgs); } function LazyLoader(img, flickity){ this.img=img; this.flickity=flickity; this.load(); } LazyLoader.prototype.handleEvent=utils.handleEvent; LazyLoader.prototype.load=function(){ this.img.addEventListener('load', this); this.img.addEventListener('error', this); var src=this.img.getAttribute('data-flickity-lazyload') || this.img.getAttribute('data-flickity-lazyload-src'); var srcset=this.img.getAttribute('data-flickity-lazyload-srcset'); this.img.src=src; if(srcset){ this.img.setAttribute('srcset', srcset); } this.img.removeAttribute('data-flickity-lazyload'); this.img.removeAttribute('data-flickity-lazyload-src'); this.img.removeAttribute('data-flickity-lazyload-srcset'); }; LazyLoader.prototype.onload=function(event){ this.complete(event, 'flickity-lazyloaded'); }; LazyLoader.prototype.onerror=function(event){ this.complete(event, 'flickity-lazyerror'); }; LazyLoader.prototype.complete=function(event, className){ this.img.removeEventListener('load', this); this.img.removeEventListener('error', this); var cell=this.flickity.getParentCell(this.img); var cellElem=cell&&cell.element; this.flickity.cellSizeChange(cellElem); this.img.classList.add(className); this.flickity.dispatchEvent('lazyLoad', event, cellElem); }; Flickity.LazyLoader=LazyLoader; return Flickity; })); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity/js/index',[ './flickity', './drag', './prev-next-button', './page-dots', './player', './add-remove-cell', './lazyload' ], factory); }else if(typeof module=='object'&&module.exports){ module.exports=factory( require('./flickity'), require('./drag'), require('./prev-next-button'), require('./page-dots'), require('./player'), require('./add-remove-cell'), require('./lazyload') ); }})(window, function factory(Flickity){ return Flickity; }); (function(window, factory){ if(typeof define=='function'&&define.amd){ define('flickity-as-nav-for/as-nav-for',[ 'flickity/js/index', 'fizzy-ui-utils/utils' ], factory); }else if(typeof module=='object'&&module.exports){ module.exports=factory( require('flickity'), require('fizzy-ui-utils') ); }else{ window.Flickity=factory( window.Flickity, window.fizzyUIUtils ); }}(window, function factory(Flickity, utils){ Flickity.createMethods.push('_createAsNavFor'); var proto=Flickity.prototype; proto._createAsNavFor=function(){ this.on('activate', this.activateAsNavFor); this.on('deactivate', this.deactivateAsNavFor); this.on('destroy', this.destroyAsNavFor); var asNavForOption=this.options.asNavFor; if(!asNavForOption){ return; } var _this=this; setTimeout(function initNavCompanion(){ _this.setNavCompanion(asNavForOption); }); }; proto.setNavCompanion=function(elem){ elem=utils.getQueryElement(elem); var companion=Flickity.data(elem); if(!companion||companion==this){ return; } this.navCompanion=companion; var _this=this; this.onNavCompanionSelect=function(){ _this.navCompanionSelect(); }; companion.on('select', this.onNavCompanionSelect); this.on('staticClick', this.onNavStaticClick); this.navCompanionSelect(true); }; proto.navCompanionSelect=function(isInstant){ if(!this.navCompanion){ return; } var selectedCell=this.navCompanion.selectedCells[0]; var firstIndex=this.navCompanion.cells.indexOf(selectedCell); var lastIndex=firstIndex + this.navCompanion.selectedCells.length - 1; var selectIndex=Math.floor(lerp(firstIndex, lastIndex, this.navCompanion.cellAlign)); this.selectCell(selectIndex, false, isInstant); this.removeNavSelectedElements(); if(selectIndex >=this.cells.length){ return; } var selectedCells=this.cells.slice(firstIndex, lastIndex + 1); this.navSelectedElements=selectedCells.map(function(cell){ return cell.element; }); this.changeNavSelectedClass('add'); }; function lerp(a, b, t){ return(b - a) * t + a; } proto.changeNavSelectedClass=function(method){ this.navSelectedElements.forEach(function(navElem){ navElem.classList[ method ]('is-nav-selected'); }); }; proto.activateAsNavFor=function(){ this.navCompanionSelect(true); }; proto.removeNavSelectedElements=function(){ if(!this.navSelectedElements){ return; } this.changeNavSelectedClass('remove'); delete this.navSelectedElements; }; proto.onNavStaticClick=function(event, pointer, cellElement, cellIndex){ if(typeof cellIndex=='number'){ this.navCompanion.selectCell(cellIndex); }}; proto.deactivateAsNavFor=function(){ this.removeNavSelectedElements(); }; proto.destroyAsNavFor=function(){ if(!this.navCompanion){ return; } this.navCompanion.off('select', this.onNavCompanionSelect); this.off('staticClick', this.onNavStaticClick); delete this.navCompanion; }; return Flickity; })); (function(window, factory){ 'use strict'; if(typeof define=='function'&&define.amd){ define('imagesloaded/imagesloaded',[ 'ev-emitter/ev-emitter' ], function(EvEmitter){ return factory(window, EvEmitter); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('ev-emitter') ); }else{ window.imagesLoaded=factory( window, window.EvEmitter ); }})(typeof window!=='undefined' ? window:this, function factory(window, EvEmitter){ var $=window.jQuery; var console=window.console; function extend(a, b){ for(var prop in b){ a[ prop ]=b[ prop ]; } return a; } var arraySlice=Array.prototype.slice; function makeArray(obj){ if(Array.isArray(obj)){ return obj; } var isArrayLike=typeof obj=='object'&&typeof obj.length=='number'; if(isArrayLike){ return arraySlice.call(obj); } return [ obj ]; } function ImagesLoaded(elem, options, onAlways){ if(!(this instanceof ImagesLoaded)){ return new ImagesLoaded(elem, options, onAlways); } var queryElem=elem; if(typeof elem=='string'){ queryElem=document.querySelectorAll(elem); } if(!queryElem){ console.error('Bad element for imagesLoaded ' +(queryElem||elem)); return; } this.elements=makeArray(queryElem); this.options=extend({}, this.options); if(typeof options=='function'){ onAlways=options; }else{ extend(this.options, options); } if(onAlways){ this.on('always', onAlways); } this.getImages(); if($){ this.jqDeferred=new $.Deferred(); } setTimeout(this.check.bind(this)); } ImagesLoaded.prototype=Object.create(EvEmitter.prototype); ImagesLoaded.prototype.options={}; ImagesLoaded.prototype.getImages=function(){ this.images=[]; this.elements.forEach(this.addElementImages, this); }; ImagesLoaded.prototype.addElementImages=function(elem){ if(elem.nodeName=='IMG'){ this.addImage(elem); } if(this.options.background===true){ this.addElementBackgroundImages(elem); } var nodeType=elem.nodeType; if(!nodeType||!elementNodeTypes[ nodeType ]){ return; } var childImgs=elem.querySelectorAll('img'); for(var i=0; i < childImgs.length; i++){ var img=childImgs[i]; this.addImage(img); } if(typeof this.options.background=='string'){ var children=elem.querySelectorAll(this.options.background); for(i=0; i < children.length; i++){ var child=children[i]; this.addElementBackgroundImages(child); }} }; var elementNodeTypes={ 1: true, 9: true, 11: true }; ImagesLoaded.prototype.addElementBackgroundImages=function(elem){ var style=getComputedStyle(elem); if(!style){ return; } var reURL=/url\((['"])?(.*?)\1\)/gi; var matches=reURL.exec(style.backgroundImage); while(matches!==null){ var url=matches&&matches[2]; if(url){ this.addBackground(url, elem); } matches=reURL.exec(style.backgroundImage); }}; ImagesLoaded.prototype.addImage=function(img){ var loadingImage=new LoadingImage(img); this.images.push(loadingImage); }; ImagesLoaded.prototype.addBackground=function(url, elem){ var background=new Background(url, elem); this.images.push(background); }; ImagesLoaded.prototype.check=function(){ var _this=this; this.progressedCount=0; this.hasAnyBroken=false; if(!this.images.length){ this.complete(); return; } function onProgress(image, elem, message){ setTimeout(function(){ _this.progress(image, elem, message); }); } this.images.forEach(function(loadingImage){ loadingImage.once('progress', onProgress); loadingImage.check(); }); }; ImagesLoaded.prototype.progress=function(image, elem, message){ this.progressedCount++; this.hasAnyBroken=this.hasAnyBroken||!image.isLoaded; this.emitEvent('progress', [ this, image, elem ]); if(this.jqDeferred&&this.jqDeferred.notify){ this.jqDeferred.notify(this, image); } if(this.progressedCount==this.images.length){ this.complete(); } if(this.options.debug&&console){ console.log('progress: ' + message, image, elem); }}; ImagesLoaded.prototype.complete=function(){ var eventName=this.hasAnyBroken ? 'fail':'done'; this.isComplete=true; this.emitEvent(eventName, [ this ]); this.emitEvent('always', [ this ]); if(this.jqDeferred){ var jqMethod=this.hasAnyBroken ? 'reject':'resolve'; this.jqDeferred[ jqMethod ](this); }}; function LoadingImage(img){ this.img=img; } LoadingImage.prototype=Object.create(EvEmitter.prototype); LoadingImage.prototype.check=function(){ var isComplete=this.getIsImageComplete(); if(isComplete){ this.confirm(this.img.naturalWidth!==0, 'naturalWidth'); return; } this.proxyImage=new Image(); this.proxyImage.addEventListener('load', this); this.proxyImage.addEventListener('error', this); this.img.addEventListener('load', this); this.img.addEventListener('error', this); this.proxyImage.src=this.img.src; }; LoadingImage.prototype.getIsImageComplete=function(){ return this.img.complete&&this.img.naturalWidth; }; LoadingImage.prototype.confirm=function(isLoaded, message){ this.isLoaded=isLoaded; this.emitEvent('progress', [ this, this.img, message ]); }; LoadingImage.prototype.handleEvent=function(event){ var method='on' + event.type; if(this[ method ]){ this[ method ](event); }}; LoadingImage.prototype.onload=function(){ this.confirm(true, 'onload'); this.unbindEvents(); }; LoadingImage.prototype.onerror=function(){ this.confirm(false, 'onerror'); this.unbindEvents(); }; LoadingImage.prototype.unbindEvents=function(){ this.proxyImage.removeEventListener('load', this); this.proxyImage.removeEventListener('error', this); this.img.removeEventListener('load', this); this.img.removeEventListener('error', this); }; function Background(url, element){ this.url=url; this.element=element; this.img=new Image(); } Background.prototype=Object.create(LoadingImage.prototype); Background.prototype.check=function(){ this.img.addEventListener('load', this); this.img.addEventListener('error', this); this.img.src=this.url; var isComplete=this.getIsImageComplete(); if(isComplete){ this.confirm(this.img.naturalWidth!==0, 'naturalWidth'); this.unbindEvents(); }}; Background.prototype.unbindEvents=function(){ this.img.removeEventListener('load', this); this.img.removeEventListener('error', this); }; Background.prototype.confirm=function(isLoaded, message){ this.isLoaded=isLoaded; this.emitEvent('progress', [ this, this.element, message ]); }; ImagesLoaded.makeJQueryPlugin=function(jQuery){ jQuery=jQuery||window.jQuery; if(!jQuery){ return; } $=jQuery; $.fn.imagesLoaded=function(options, callback){ var instance=new ImagesLoaded(this, options, callback); return instance.jqDeferred.promise($(this)); };}; ImagesLoaded.makeJQueryPlugin(); return ImagesLoaded; }); (function(window, factory){ if(typeof define=='function'&&define.amd){ define([ 'flickity/js/index', 'imagesloaded/imagesloaded' ], function(Flickity, imagesLoaded){ return factory(window, Flickity, imagesLoaded); }); }else if(typeof module=='object'&&module.exports){ module.exports=factory( window, require('flickity'), require('imagesloaded') ); }else{ window.Flickity=factory( window, window.Flickity, window.imagesLoaded ); }}(window, function factory(window, Flickity, imagesLoaded){ 'use strict'; Flickity.createMethods.push('_createImagesLoaded'); var proto=Flickity.prototype; proto._createImagesLoaded=function(){ this.on('activate', this.imagesLoaded); }; proto.imagesLoaded=function(){ if(!this.options.imagesLoaded){ return; } var _this=this; function onImagesLoadedProgress(instance, image){ var cell=_this.getParentCell(image.img); _this.cellSizeChange(cell&&cell.element); if(!_this.options.freeScroll){ _this.positionSliderAtSelected(); }} imagesLoaded(this.slider).on('progress', onImagesLoadedProgress); }; return Flickity; })); ;(function ($){ "use strict"; var methods=(function (){ var c={ bcClass: 'sf-breadcrumb', menuClass: 'sf-js-enabled', anchorClass: 'sf-with-ul', menuArrowClass: 'sf-arrows' }, ios=(function (){ var ios=/iPhone|iPad|iPod/i.test(navigator.userAgent); if(ios){ $('html').css('cursor', 'pointer').on('click', $.noop); } return ios; })(), wp7=(function (){ var style=document.documentElement.style; return ('behavior' in style&&'fill' in style&&/iemobile/i.test(navigator.userAgent)); })(), toggleMenuClasses=function ($menu, o){ var classes=c.menuClass; if(o.cssArrows){ classes +=' ' + c.menuArrowClass; } $menu.toggleClass(classes); }, setPathToCurrent=function ($menu, o){ return $menu.find('li.' + o.pathClass).slice(0, o.pathLevels) .addClass(o.hoverClass + ' ' + c.bcClass) .filter(function (){ return ($(this).children(o.popUpSelector).hide().show().length); }).removeClass(o.pathClass); }, toggleAnchorClass=function ($li){ $li.children('a').toggleClass(c.anchorClass); }, toggleTouchAction=function ($menu){ var touchAction=$menu.css('ms-touch-action'); touchAction=(touchAction==='pan-y') ? 'auto':'pan-y'; $menu.css('ms-touch-action', touchAction); }, applyHandlers=function ($menu, o){ var targets='li:has(' + o.popUpSelector + ')'; if($.fn.hoverIntent&&!o.disableHI){ $menu.hoverIntent(over, out, targets); }else{ $menu .on('mouseenter.superfish', targets, over) .on('mouseleave.superfish', targets, out); } var touchevent='MSPointerDown.superfish'; if(!ios){ touchevent +=' touchend.superfish'; } if(wp7){ touchevent +=' mousedown.superfish'; } $menu .on('focusin.superfish', 'li', over) .on('focusout.superfish', 'li', out) .on(touchevent, 'a', o, touchHandler); }, touchHandler=function (e){ var $this=$(this), $ul=$this.siblings(e.data.popUpSelector); if($ul.length > 0&&$ul.is(':hidden')){ $this.one('click.superfish', false); if(e.type==='MSPointerDown'){ $this.trigger('focus'); }else{ $.proxy(over, $this.parent('li'))(); }} }, over=function (){ var $this=$(this), o=getOptions($this); if($(this).parents('.megamenu').length > 0) return; clearTimeout(o.sfTimer); $this.siblings().superfish('hide').end().superfish('show'); }, out=function (){ var $this=$(this), o=getOptions($this); if(ios){ $.proxy(close, $this, o)(); }else{ clearTimeout(o.sfTimer); o.sfTimer=setTimeout($.proxy(close, $this, o), o.delay); }}, close=function (o){ o.retainPath=($.inArray(this[0], o.$path) > -1); this.superfish('hide'); if(!this.parents('.' + o.hoverClass).length){ o.onIdle.call(getMenu(this)); if(o.$path.length){ $.proxy(over, o.$path)(); }} }, getMenu=function ($el){ return $el.closest('.' + c.menuClass); }, getOptions=function ($el){ return getMenu($el).data('sf-options'); }; return { hide: function (instant){ if(this.length){ var $this=this, o=getOptions($this); if(!o){ return this; } if($(this).hasClass('menu-item-over')&&$(this).hasClass('megamenu')){ return true; } var not=(o.retainPath===true) ? o.$path:'', $ul=$this.find('li.' + o.hoverClass).add(this).not(not).removeClass(o.hoverClass).children(o.popUpSelector), speed=o.speedOut; if(instant){ $ul.show(); speed=0; } o.retainPath=false; o.onBeforeHide.call($ul); if(o.dropdownStyle=='minimal'){ var $this=$(this); o.onHide.call($this); }else{ $ul.stop(true, true).animate(o.animationOut, speed, function (){ var $this=$(this); o.onHide.call($this); }); } if($(this).parents('.megamenu').length > 0) return; if($('#header-outer[data-megamenu-rt="1"]').length > 0&&$('#header-outer[data-transparent-header="true"]').length > 0){ if($('#header-outer.scrolled-down').length==0&&$('#header-outer.small-nav').length==0&&$('#header-outer.detached').length==0&&$('#header-outer.fixed-menu').length==0){ $('#header-outer').addClass('transparent'); } if($('#header-outer[data-permanent-transparent="1"][data-transparent-header="true"]').length > 0){ $('#header-outer').addClass('transparent'); }} } return this; }, show: function (){ if($(this).parents('.megamenu').length > 0) return; var o=getOptions(this); if(!o){ return this; } var $this=this.addClass(o.hoverClass), $ul=$this.children(o.popUpSelector); if($('#header-outer[data-megamenu-rt="1"]').length > 0&&$(this).hasClass('megamenu')&&$('#header-outer').attr('data-transparent-header')=='true'){ $('#header-outer').addClass('no-transition'); $('#header-outer').removeClass('transparent'); } o.onBeforeShow.call($ul); if(!$($ul).parents('li').hasClass('megamenu')&&!$($ul).parents('ul').hasClass('sub-menu')&&$ul.offset()){ $ul.addClass('temp-hidden-display'); var docW=$("#top .container").width(); var elm=$ul; var off=elm.offset(); var l=off.left - ($(window).width() - docW)/2; var w=elm.width(); var isEntirelyVisible=(l+w <=$(window).width()-100); if(! isEntirelyVisible){ $ul.parents('li').addClass('edge'); }else{ $ul.parents('li').removeClass('edge'); } $ul.removeClass('temp-hidden-display'); } if(o.dropdownStyle=='minimal'){ o.onShow.call($ul); }else{ $ul.stop(true, true).animate(o.animation, o.speed, function (){ o.onShow.call($ul); }); } if($ul.length > 0&&$ul.parents('.sub-menu').length > 0&&$ul.parents('.sf-menu').length > 0){ if($ul.offset().left + $ul.outerWidth() > $(window).width()){ $ul.addClass('on-left-side'); $ul.find('ul').addClass('on-left-side'); }} return this; }, destroy: function (){ return this.each(function (){ var $this=$(this), o=$this.data('sf-options'), $hasPopUp; if(!o){ return false; } $hasPopUp=$this.find(o.popUpSelector).parent('li'); clearTimeout(o.sfTimer); toggleMenuClasses($this, o); toggleAnchorClass($hasPopUp); toggleTouchAction($this); $this.off('.superfish').off('.hoverIntent'); $hasPopUp.children(o.popUpSelector).attr('style', function (i, style){ return style.replace(/display[^;]+;?/g, ''); }); o.$path.removeClass(o.hoverClass + ' ' + c.bcClass).addClass(o.pathClass); $this.find('.' + o.hoverClass).removeClass(o.hoverClass); o.onDestroy.call($this); $this.removeData('sf-options'); }); }, init: function (op){ return this.each(function (){ var $this=$(this); if($this.data('sf-options')){ return false; } var o=$.extend({}, $.fn.superfish.defaults, op), $hasPopUp=$this.find(o.popUpSelector).parent('li'); o.$path=setPathToCurrent($this, o); $this.data('sf-options', o); toggleMenuClasses($this, o); toggleAnchorClass($hasPopUp); toggleTouchAction($this); applyHandlers($this, o); $hasPopUp.not('.' + c.bcClass).superfish('hide', true); o.onInit.call(this); }); }};})(); $.fn.superfish=function (method, args){ if(methods[method]){ return methods[method].apply(this, Array.prototype.slice.call(arguments, 1)); } else if(typeof method==='object'||! method){ return methods.init.apply(this, arguments); }else{ return $.error('Method ' + method + ' does not exist on jQuery.fn.superfish'); }}; $.fn.superfish.defaults={ popUpSelector: 'ul,.sf-mega', hoverClass: 'sfHover', pathClass: 'overrideThisToUse', pathLevels: 1, delay: 800, animation: {opacity: 'show'}, animationOut: {opacity: 'hide'}, speed: 'normal', speedOut: 'fast', cssArrows: true, disableHI: false, onInit: $.noop, onBeforeShow: $.noop, onShow: $.noop, onBeforeHide: $.noop, onHide: $.noop, onIdle: $.noop, onDestroy: $.noop, dropdownStyle: ($('body[data-dropdown-style="minimal"]').length > 0) ? 'minimal':'classic' }; $.fn.extend({ hideSuperfishUl: methods.hide, showSuperfishUl: methods.show }); })(jQuery); (function($, window, document){ "use strict"; var $window=$(window), $body=$('body'), $offCanvasEl=$('#slide-out-widget-area'), $offCanvasBG=$('#slide-out-widget-area-bg'), $headerOuterEl=$('#header-outer'), $headerSecondaryEl=$('#header-secondary-outer'), $searchButtonEl=$('#header-outer #search-btn a'), $wpAdminBar=$('#wpadminbar'), $loadingScreenEl=$('#ajax-loading-screen'), $bodyBorderTop=$('.body-border-top'), $pageHeaderBG=$('#page-header-bg'), $footerOuterEl=$('#footer-outer'), $bodyBorderWidth=($('.body-border-right').length > 0) ? $('.body-border-right').width():0, $logoHeight=($headerOuterEl.is('[data-logo-height]')) ? parseInt($headerOuterEl.attr('data-logo-height')):30, headerPadding=($headerOuterEl.is('[data-padding]')) ? parseInt($headerOuterEl.attr('data-padding')):28, logoShrinkNum=($headerOuterEl.is('[data-shrink-num]')) ? $headerOuterEl.attr('data-shrink-num'):6, condenseHeaderLayout=($headerOuterEl.is('[data-condense="true"]')) ? true:false, usingLogoImage=($headerOuterEl.is('[data-using-logo="1"]')) ? true:false, headerResize=($headerOuterEl.is('[data-header-resize="1"]')) ? true:false, headerTransparent=($headerOuterEl.is('[data-transparent-header="true"]')) ? true:false, headerLayoutFormat=($body.is('[data-header-format]')) ? $body.attr('data-header-format'):'default', headerHideUntilNeeded=($body.is('[data-hhun]')) ? $body.attr('data-hhun'):'', $animationEasing=($body.is('[data-cae]')&&$body.attr('data-cae')!=='swing') ? $body.attr('data-cae'):'easeOutCubic', $animationDuration=($body.is('[data-cad]')) ? $body.attr('data-cad'):'650', bypassAnimations=(!$body.is('[data-m-animate="1"]')&&navigator.userAgent.match(/(Android|iPod|iPhone|iPad|BlackBerry|IEMobile|Opera Mini)/)) ? true:false, $portfolio_containers=[], $svgIcons=[], $nectarCustomSliderRotate=[], $flickitySliders=[], flickityDragArr=[], viewIndicatorArr=[], iconMouseFollowArr=[], postGridImgMouseFollowArr=[], $fsProjectSliderArr=[], $wooFlickityCarousels=[], $liquidBG_EL=[], $testimonialSliders=[], $mouseParallaxScenes=[], $nectarMasonryBlogs=[], $standAnimatedColTimeout=[], $animatedSVGIconTimeout=[], $projectCarouselSliderArr=[], $nectarPostGridArr=[], $verticalScrollingTabs=[], $tabbedClickCount=0, $fullscreenSelector='', $fullscreenMarkupBool=false, $bodyBorderHeaderColorMatch=false, nectarBoxRoll={ animating: 'false', perspect: 'not-rolled' }, $nectarFullPage={ $usingFullScreenRows: false }, $svgResizeTimeout, $bodyBorderSizeToRemove; if($bodyBorderTop.length > 0){ if($bodyBorderTop.css('background-color')=='#ffffff'&&$body.attr('data-header-color')=='light' || $bodyBorderTop.css('background-color')=='rgb(255, 255, 255)'&&$body.attr('data-header-color')=='light' || $bodyBorderTop.css('background-color')==$headerOuterEl.attr('data-user-set-bg')){ $bodyBorderHeaderColorMatch=true; }} var nectarDOMInfo={ usingMobileBrowser: (navigator.userAgent.match(/(Android|iPod|iPhone|iPad|BlackBerry|IEMobile|Opera Mini)/)) ? true:false, usingFrontEndEditor: (typeof window.vc_iframe==='undefined') ? false:true, getWindowSize: function(){ nectarDOMInfo.winH=window.innerHeight; nectarDOMInfo.winW=window.innerWidth; nectarDOMInfo.adminBarHeight=($wpAdminBar.length > 0) ? $wpAdminBar.height():0; nectarDOMInfo.secondaryHeaderHeight=($headerSecondaryEl.length > 0&&$headerSecondaryEl.css('display')!='none') ? $headerSecondaryEl.outerHeight():0; nectarDOMInfo.footerOuterHeight=($footerOuterEl.length > 0) ? $footerOuterEl.outerHeight():0; }, scrollTop: 0, clientX: 0, clientY: 0, scrollPosMouse: function(){ return $window.scrollTop(); }, scrollPosRAF: function(){ nectarDOMInfo.scrollTop=$window.scrollTop(); requestAnimationFrame(nectarDOMInfo.scrollPosRAF); }, bindEvents: function(){ if(!nectarDOMInfo.usingMobileBrowser){ $window.on('scroll', function(){ nectarDOMInfo.scrollTop=nectarDOMInfo.scrollPosMouse(); }); }else{ requestAnimationFrame(nectarDOMInfo.scrollPosRAF); } document.addEventListener("mousemove", function(e){ nectarDOMInfo.clientX=e.clientX; nectarDOMInfo.clientY=e.clientY; }); $window.on('resize', nectarDOMInfo.getWindowSize); }, init: function(){ $wpAdminBar=$('#wpadminbar'); this.getWindowSize(); this.scrollTop=this.scrollPosMouse(); this.bindEvents(); this.usingFrontEndEditor=(typeof window.vc_iframe==='undefined') ? false:true; }}; function smartResizeInit(){ fullWidthContentColumns(); parallaxRowsBGCals(); headerSpace(); OCM_overflowState(); showOnLeftSubMenu(); } function resizeInit(){ fullWidthSections(); fullWidthContentColumns(); addOrRemoveSF(); responsiveVideoIframes(); if(!nectarDOMInfo.usingMobileBrowser){ parallaxRowsBGCals(); }} function flexsliderInit(){ $('.flex-gallery').each(function (){ if(!$().flexslider){ return; } var $that=$(this); imagesLoaded($(this), function (){ $that.flexslider({ animation: 'fade', smoothHeight: false, animationSpeed: 500, useCSS: false, touch: true }); $('.flex-gallery .flex-direction-nav li a.flex-next').html(''); $('.flex-gallery .flex-direction-nav li a.flex-prev').html(''); }); }); } function NectarIconMouseFollow($el, iconType){ this.lastX=nectarDOMInfo.clientX; this.lastY=nectarDOMInfo.clientY; this.$el=$el; this.iconType=iconType; this.timeout=false; this.overEl=false; this.$dragEl=''; this.$viewEl=''; this.$closeEl=''; this.lerpDamp=0.18; this.createMarkup(); this.mouseBind(); } NectarIconMouseFollow.prototype.createMarkup=function(){ if(this.iconType==='horizontal-movement'){ if($('.nectar-drag-indicator').length==0){ var $usingBoxedClass=($('body > #boxed').length > 0) ? ' in-boxed':''; $('body').append('
    '); this.$dragEl=$('.nectar-drag-indicator'); this.dragRAF(); }else{ this.$dragEl=$('.nectar-drag-indicator'); }} if(this.iconType==='view-indicator'){ if($('.nectar-view-indicator').length==0){ var $usingBoxedClass=($('body > #boxed').length > 0) ? ' in-boxed':''; $('body').append('
    '); $('.nectar-view-indicator span').text($('.nectar-post-grid').attr('data-indicator-text')); this.$viewEl=$('.nectar-view-indicator'); this.viewRAF(); }else{ this.$viewEl=$('.nectar-view-indicator'); }} if(this.iconType==='close-indicator'){ if($('.nectar-view-indicator').length==0){ var $usingBoxedClass=($('body > #boxed').length > 0) ? ' in-boxed':''; $('body').append('
    '); this.$closeEl=$('.nectar-close-indicator'); this.closeRAF(); }else{ this.$closeEl=$('.nectar-close-indicator'); }} if(this.iconType==='post-grid-images'){ if(!this.$el.hasClass('mouse-move-bound')){ this.$viewEl=this.$el.find('.nectar-post-grid-item-bg-wrap'); this.$el.addClass('mouse-move-bound'); this.viewRAF(); }else{ this.$viewEl=this.$el.find('.nectar-post-grid-item-bg-wrap'); this.viewRAF(); }} } NectarIconMouseFollow.prototype.mouseBind=function(){ var that=this; if(this.iconType==='horizontal-movement'){ that.$el.find('.flickity-viewport').on('mouseenter', function(){ that.$dragEl.addClass('visible'); }); that.$el.find('.flickity-viewport').on('mouseleave', function(){ that.$dragEl.removeClass('visible'); }); }else if(this.iconType==='close-indicator'){ $('body').on('click','.team-member[data-style*="bio_fullscreen"]',function(){ if($('.nectar_team_member_overlay:not(.open)').length > 0){ return; } that.$closeEl.addClass('visible'); that.$closeEl.find('.inner').addClass('visible'); }); $('body').on('click','.nectar_team_member_overlay:not(.animating)',function(){ that.$closeEl.removeClass('visible'); that.$closeEl.find('.inner').removeClass('visible'); }); $('body').on('mouseenter', '.nectar_team_member_overlay .bottom_meta a', function(){ that.$closeEl.removeClass('visible'); }); $('body').on('mouseleave', '.nectar_team_member_overlay .bottom_meta a', function(){ that.$closeEl.addClass('visible'); }); } else if(this.iconType==='view-indicator'){ var $color=that.$el.attr('data-indicator-color'); var $style=that.$el.attr('data-indicator-style'); that.$el.find('.nectar-post-grid-item').off(); that.$el.find('.nectar-post-grid-item').on('mouseenter', function(){ that.$viewEl.addClass('visible'); that.$viewEl.attr('class', function(i, c){ return c.replace(/(^|\s)style-\S+/g, ''); }); that.$viewEl.addClass('style-'+$style); if($style!=='see-through'){ that.$viewEl.find('.color-circle').css('background-color', $color); } clearTimeout(that.timeout); }); that.$el.find('.nectar-post-grid-item').on('mouseleave', function(){ that.timeout=setTimeout(function(){ that.$viewEl.removeClass('visible'); },100); }); that.$el.find('.nectar-post-grid-item .meta-category a').on('mouseenter', function(){ that.$viewEl.removeClass('visible'); }); that.$el.find('.nectar-post-grid-item .meta-category a').on('mouseleave', function(){ that.$viewEl.addClass('visible'); }); } else if(this.iconType==='post-grid-images'){ that.$el.on('mouseenter', function(){ $(this).addClass('mouse-over'); }); that.$el.on('mouseleave', function(){ $(this).removeClass('mouse-over'); }); }}; NectarIconMouseFollow.prototype.dragRAF=function(){ this.lastY=linearInterpolate(this.lastY, nectarDOMInfo.clientY, this.lerpDamp); this.lastX=linearInterpolate(this.lastX, nectarDOMInfo.clientX, this.lerpDamp); this.$dragEl.css({ 'transform': 'translateX(' + this.lastX + 'px) translateY(' + this.lastY + 'px)' }); requestAnimationFrame(this.dragRAF.bind(this)); }; NectarIconMouseFollow.prototype.viewRAF=function(){ this.lastY=linearInterpolate(this.lastY, nectarDOMInfo.clientY, this.lerpDamp); this.lastX=linearInterpolate(this.lastX, nectarDOMInfo.clientX, this.lerpDamp); this.$viewEl.css({ 'transform':'translateX(' + this.lastX + 'px) translateY(' + this.lastY + 'px)' }); requestAnimationFrame(this.viewRAF.bind(this)); }; NectarIconMouseFollow.prototype.closeRAF=function(){ this.lastY=linearInterpolate(this.lastY, nectarDOMInfo.clientY, this.lerpDamp); this.lastX=linearInterpolate(this.lastX, nectarDOMInfo.clientX, this.lerpDamp); this.$closeEl.css({ 'transform': 'translateX(' + this.lastX + 'px) translateY(' + this.lastY + 'px)' }); requestAnimationFrame(this.closeRAF.bind(this)); }; function flickityLazyCalcs(){ $('.wpb_gallery_slidesflickity_static_height_style .cell[data-lazy="true"]').each(function(){ $(this).css({ 'height': '', 'width':'' }); var heightAttr=parseInt($(this).find('img').attr('height')); var widthAttr=parseInt($(this).find('img').attr('width')); var dimensions=calculateAspectRatio(widthAttr, heightAttr, 2000, parseInt($(this).find('img').height())); $(this).css({ 'height': dimensions.height + 'px', 'width':dimensions.width + 'px' }); }); } function flickityLazyInit(){ if($('.wpb_gallery_slidesflickity_static_height_style .cell[data-lazy="true"]').length > 0){ flickityLazyCalcs(); $window.on('smartresize',flickityLazyCalcs); }} function flickityInit(){ if($('.nectar-flickity:not(.masonry)').length==0){ return false; } $flickitySliders=[]; flickityDragArr=[]; $('.nectar-flickity:not(.masonry)').each(function (i){ $(this).removeClass(function (index, className){ return (className.match(/(^|\s)instance-\S+/g)||[]).join(' '); }); $(this).addClass('instance-' + i); var $freeScrollBool=($(this).is('[data-free-scroll]')&&$(this).attr('data-free-scroll')=='true') ? true:false, $groupCellsBool=true, $flickContainBool=true, $flcikAttr=0.025, $paginationBool=false, $nextPrevArrowBool=true, $flickCellAlign='center'; if($(this).is('[data-format="fixed_text_content_fullwidth"]')){ $flickCellAlign='left'; $groupCellsBool=false; $flickContainBool=false; $flcikAttr=0.02; if($(this).parent().is('[data-alignment="right"]')){ $flickCellAlign='right'; }} if($freeScrollBool==true){ $groupCellsBool=false; } if($(this).attr('data-controls').length > 0 && $(this).attr('data-controls')=='next_prev_arrows'|| $(this).attr('data-controls').length > 0 && $(this).attr('data-controls')=='next_prev_arrows_overlaid'){ $paginationBool=false; $nextPrevArrowBool=true; }else{ $paginationBool=true; $nextPrevArrowBool=false; } if($(this).attr('data-controls').length > 0 && $(this).attr('data-controls')=='none'){ $paginationBool=false; $nextPrevArrowBool=false; } var $flickity_autoplay=false; if($(this).is('[data-autoplay]') && $(this).attr('data-autoplay')=='true'){ $flickity_autoplay=true; if($(this).is('[data-autoplay-dur]') && $(this).attr('data-autoplay-dur').length > 0){ if(parseInt($(this).attr('data-autoplay-dur')) > 100 && parseInt($(this).attr('data-autoplay-dur')) < 30000){ $flickity_autoplay=parseInt($(this).attr('data-autoplay-dur')); }} } var $that=$(this); var $frontEndEditorDrag=($('body.vc_editor').length > 0) ? false:true; var $frontEndEditorPause=($('body.vc_editor').length > 0) ? true:false; var $arrowShape=''; var $wrapAround=($(this).is('[data-wrap]')&&$(this).attr('data-wrap')=='no-wrap') ? false:true; var $flickity_adaptive_height=false; if($(this).is('[data-adaptive-height="true"]')){ $flickity_adaptive_height=true; } var $lazyload=($(this).find('img[data-flickity-lazyload]')) ? 1:false; if($(this).find('img[data-flickity-lazyload]')&&$(this).is('[data-overflow="visible"]')&&$(this).is('[data-wrap="no-wrap"]')){ $lazyload=2; } var $flickity_rtl=($body.hasClass('rtl')) ? true:false; if($(this).attr('data-controls').length > 0&&$(this).attr('data-controls')=='next_prev_arrows_overlaid' || $(this).attr('data-controls').length > 0&&$(this).attr('data-controls')=='touch_total'){ $arrowShape={ x0: 10, x1: 60, y1: 50, x2: 70, y2: 40, x3: 30 }}else{ $arrowShape={ x0: 20, x1: 70, y1: 30, x2: 70, y2: 25, x3: 70 }} $flickitySliders[i]=new Flickity('.nectar-flickity.instance-' + i, { contain: $flickContainBool, draggable: $frontEndEditorDrag, lazyLoad: $lazyload, imagesLoaded: true, percentPosition: true, adaptiveHeight: $flickity_adaptive_height, cellAlign: $flickCellAlign, groupCells: $groupCellsBool, prevNextButtons: $nextPrevArrowBool, freeScroll: $freeScrollBool, pageDots: $paginationBool, resize: true, selectedAttraction: $flcikAttr, autoPlay: $flickity_autoplay, rightToLeft: $flickity_rtl, pauseAutoPlayOnHover: $frontEndEditorPause, setGallerySize: true, wrapAround: $wrapAround, accessibility: false, arrowShape: $arrowShape }); if($(this).is('[data-controls="touch_total"]')){ if($(this).find('.visualized-total').length==0){ if($(this).parents('.full-width-content').length > 0&&$(this).parents('.vc_col-sm-12').length > 0){ $(this).append('
    '); }else{ $(this).append('
    '); }} if(!nectarDOMInfo.usingMobileBrowser){ flickityDragArr[i]=new NectarIconMouseFollow($(this),'horizontal-movement'); $flickitySliders[i].on('dragMove', function (event, pointer){ nectarDOMInfo.clientY=pointer.clientY; nectarDOMInfo.clientX=pointer.clientX; }); $flickitySliders[i].on('pointerDown', function (event, pointer){ $('.nectar-drag-indicator').addClass('pointer-down'); }); $flickitySliders[i].on('pointerUp', function (event, pointer){ $('.nectar-drag-indicator').removeClass('pointer-down'); }); } var $totalImgs=$(this).find('.flickity-page-dots li').length; var $totalIndicator=$(this).find('.visualized-total span'); var $totalPosition=1; var $totalWidth=$(this).find('.visualized-total').width(); $window.on('smartresize',function(){ setTimeout(function(){ $totalImgs=$that.find('.flickity-page-dots li').length; $totalWidth=$that.find('.visualized-total').width(); $totalPosition=($totalWidth / $totalImgs) * $that.find('.flickity-page-dots .is-selected').index(); $totalIndicator.css('width', 100/$totalImgs + '%'); $totalIndicator.css({ 'x':$totalPosition + 'px' }); },200); }); setTimeout(function(){ $totalImgs=$that.find('.flickity-page-dots li').length; $totalWidth=$that.find('.visualized-total').width(); $totalIndicator.css('width', 100/$totalImgs + '%'); },200); $flickitySliders[i].on('change', function (event, progress){ $totalPosition=($totalWidth / $totalImgs) * $that.find('.flickity-page-dots .is-selected').index(); $totalIndicator.css({ 'x':$totalPosition + 'px' }); }); } if($(this).is('[data-format="fixed_text_content_fullwidth"]')&&!nectarDOMInfo.usingFrontEndEditor){ var $onMobileBrowser=nectarDOMInfo.usingMobileBrowser; $flickitySliders[i].on('scroll', function (){ if($onMobileBrowser){ return; } var $flkSlideWidth=$that.find('.cell').outerWidth() + 25, $leftHeaderSize=($('body[data-header-format="left-header"]').length > 0&&$window.width() > 1000) ? 275:0, $extraWindowSpace=(($window.width() + $leftHeaderSize) - $that.parents('.main-content').width()) / 2; $extraWindowSpace +=parseInt($that.css('margin-left')) + 2; $flickitySliders[i].slides.forEach(function (slide, j){ var $scaleAmt=1, $translateXAmt=0, $rotateAmt=0, $slideZIndex=10, $opacityAmt=1, $slideOffset=$(slide.cells[0].element).offset().left, flkInstanceSlide=$('.nectar-flickity.instance-' + i + ' .cell:nth-child(' + (j + 1) + ')'); if($slideOffset - $extraWindowSpace < 0 && $slideOffset - $extraWindowSpace > $flkSlideWidth * -1){ $scaleAmt=1 + (($slideOffset - $extraWindowSpace) / 1500); $opacityAmt=1 + (($slideOffset - $extraWindowSpace + 70) / 550); $translateXAmt=(($slideOffset - $extraWindowSpace)) * -1; $rotateAmt=(($slideOffset - $extraWindowSpace) / 25) * -1; }else{ $scaleAmt=1; $opacityAmt=1; $translateXAmt=0; $rotateAmt=0; } if($slideOffset + 5 - $extraWindowSpace < 0 && $slideOffset - $extraWindowSpace > $flkSlideWidth * -1){ $slideZIndex=5; }else{ $slideZIndex=10; } flkInstanceSlide.css({ 'z-index': $slideZIndex }); flkInstanceSlide.find('.inner-wrap-outer').css({ 'transform': 'perspective(800px) translateX(' + $translateXAmt + 'px) rotateY(' + $rotateAmt + 'deg) translateZ(0)', 'opacity': $opacityAmt }); flkInstanceSlide.find('.inner-wrap').css({ 'transform': 'scale(' + $scaleAmt + ') translateZ(0)' }); }); }); } var $removeHiddenTimeout; var $removeMovingTimeout; $flickitySliders[i].on('dragStart', function (){ clearTimeout($removeHiddenTimeout); clearTimeout($removeMovingTimeout); $that.addClass('is-dragging'); $that.addClass('is-moving'); $that.find('.flickity-prev-next-button').addClass('hidden'); }); $flickitySliders[i].on('dragEnd', function (){ $that.removeClass('is-dragging'); $removeHiddenTimeout=setTimeout(function (){ $that.removeClass('is-moving'); $that.find('.flickity-prev-next-button').removeClass('hidden'); }, 600); $removeMovingTimeout=setTimeout(function (){ $that.removeClass('is-moving'); }, 300); }); $('.flickity-prev-next-button').on('click', function (){ clearTimeout($removeHiddenTimeout); $(this).parents('.nectar-flickity') .find('.flickity-prev-next-button') .addClass('hidden'); $removeHiddenTimeout=setTimeout(function (){ $that .find('.flickity-prev-next-button') .removeClass('hidden'); }, 600); }); if($that.hasClass('nectar-carousel')){ imagesLoaded($that, function (){ nectarCarouselFlkEH($that); }); }}); var $usingNectarCarouselFlk=($('.nectar-carousel.nectar-flickity:not(.masonry)').length > 0) ? true:false; if($usingNectarCarouselFlk){ $window.on('resize',setNectarCarouselFlkEH); }} function setNectarCarouselFlkEH(){ $('.nectar-carousel.nectar-flickity:not(.masonry)').each(function (){ nectarCarouselFlkEH($(this)); }); } function nectarCarouselFlkEH($slider_instance){ var $tallestSlideCol=0; $slider_instance .find('.flickity-slider > .cell') .css('height', 'auto'); $slider_instance.find('.flickity-slider > .cell').each(function (){ if($(this).height() > $tallestSlideCol){ $tallestSlideCol=$(this).height(); }}); if($tallestSlideCol < 10){ $tallestSlideCol='auto'; } $slider_instance .find('.flickity-slider > .cell') .css('height', $tallestSlideCol + 'px'); } function twentytwentyInit(){ $('.twentytwenty-container').each(function (){ var $that=$(this); if($that.find('.twentytwenty-handle').length==0){ $(this).imagesLoaded(function (){ $that.twentytwenty(); }); }}); } function initSF(){ addOrRemoveSF(); if($('body[data-header-format="left-header"]').length==0){ var $disableHI; if(!($('#header-outer[data-megamenu-rt="1"]').length > 0 && $('#header-outer[data-transparent-header="true"]').length > 0)){ $disableHI=true; }else{ $disableHI=false; } $(".sf-menu:not(.buttons)").superfish({ delay: 650, speed: 'fast', disableHI: $disableHI, speedOut: 'fast', animation: { opacity: 'show' }}); $('#header-outer .sf-menu.buttons li.menu-item').on('mouseover',function(){ $(this).addClass('sfHover'); }); $('#header-outer .sf-menu.buttons li.menu-item').on('mouseleave',function(){ var $that=$(this); if($that.is('.menu-item-has-children')){ setTimeout(function (){ if(!$that.is(':hover')){ $that.removeClass('sfHover'); }}, 200); }else{ $that.removeClass('sfHover'); }}); $('#header-secondary-outer li.megamenu, .sf-menu.buttons li.megamenu').removeClass('megamenu'); $('#header-outer .sf-menu > li:not(.megamenu) > ul > li > ul').each(function (){ if($(this).offset().left + $(this).outerWidth() > $window.width()){ $(this).addClass('on-left-side'); $(this).find('ul').addClass('on-left-side'); }}); $('body:not([data-header-format="left-header"]) header#top nav > ul > li.megamenu > ul > li > ul > li:has("> ul")').addClass('has-ul'); if($('body[data-megamenu-width="full-width"]').length > 0&&$('ul.sub-menu').length > 0){ megamenuFullwidth(); $window.on('smartresize', megamenuFullwidth); $('header#top nav > ul > li.megamenu > .sub-menu').css('box-sizing', 'content-box'); } $('header#top nav > ul.sf-menu > li.menu-item').on('mouseenter', function (){ $(this).addClass('menu-item-over'); }); $('header#top nav > ul.sf-menu > li.menu-item').on('mouseleave', function (){ $(this).removeClass('menu-item-over'); }); $('header#top nav .megamenu .sub-menu a.sf-with-ul .sf-sub-indicator, header#top .megamenu .sub-menu a .sf-sub-indicator').remove(); $('header#top nav > ul > li.megamenu > ul.sub-menu > li > a').each(function (){ if($(this).text()=='-'||$(this).text()=='–'||$(this).parent().hasClass('hide-title')){ $(this).remove(); }}); } if(nectarDOMInfo.usingMobileBrowser&&$('#header-outer[data-remove-fixed="1"]').length==0){ $body.attr('data-hhun', '0'); }} function megamenuFullwidth(){ var $windowWidth=$window.width(); var $headerContainerWidth=$('header#top > .container').width(); $('header#top nav > ul > li.megamenu > .sub-menu').css({ 'padding-left': ($windowWidth - $headerContainerWidth) / 2 + 'px', 'padding-right': ($windowWidth + 2 - $headerContainerWidth) / 2 + 'px', 'width': $headerContainerWidth, 'left': '-' + ($windowWidth - $headerContainerWidth) / 2 + 'px' }); } function addOrRemoveSF(){ if(nectarDOMInfo.winW < 1000&&$body.attr('data-responsive')=='1'){ $body.addClass('mobile'); $('header#top nav').css('display', 'none'); }else{ $body.removeClass('mobile'); $('header#top nav').css('display', ''); $('.slide-out-widget-area-toggle #toggle-nav .lines-button').removeClass('close'); }} function showOnLeftSubMenu(){ $('#header-outer .sf-menu > li:not(.megamenu) > ul > li > ul').each(function (){ $(this).removeClass('on-left-side'); if($(this).offset().left + $(this).outerWidth() > $window.width()){ $(this).addClass('on-left-side'); $(this).find('ul').addClass('on-left-side'); }else{ $(this).removeClass('on-left-side'); $(this).find('ul').removeClass('on-left-side'); }}); } function standardCarouselInit(){ if($('.carousel').length==0){ return; } if(typeof SalientRecentProjectsCarousel!=='undefined'){ $('ul.carousel.portfolio-items').each(function (i){ $projectCarouselSliderArr[i]=new SalientRecentProjectsCarousel($(this)); }); } $('ul.carousel:not(".clients"):not(.portfolio-items)').each(function (){ var $that=$(this), maxCols=($(this).parents('.carousel-wrap').attr('data-full-width')=='true') ? 'auto':3, scrollNum=($(this).parents('.carousel-wrap').attr('data-full-width')=='true') ? 'auto':'', colWidth=($(this).parents('.carousel-wrap').attr('data-full-width')=='true') ? 500:453, $autoplayBool=($(this).attr('data-autorotate')=='true') ? true:false, $themeSkin=true, $themeSkin2=true; var scrollSpeed, easing; if($('body.ascend').length > 0&&$(this).parents('.carousel-wrap').attr('data-full-width')!='true' || $('body.material').length > 0&&$(this).parents('.carousel-wrap').attr('data-full-width')!='true'){ if($(this).find('li').length % 3===0){ $themeSkin=true; $themeSkin2=true; }else{ $themeSkin=false; $themeSkin2=true; }}else{ $themeSkin=true; $themeSkin2=true; } scrollSpeed=(parseInt($(this).attr('data-scroll-speed'))) ? parseInt($(this).attr('data-scroll-speed')):700; easing=($(this).is('[data-easing]')) ? $(this).attr('data-easing'):'linear'; var $element=$that; if($that.find('img').length==0){ $element=$body; } imagesLoaded($element, function (){ $that.carouFredSel({ circular: $themeSkin, infinite: $themeSkin2, height: 'auto', responsive: true, items: { width: colWidth, visible: { min: 1, max: maxCols }}, swipe: { onTouch: true, onMouse: true, options: { excludedElements: "button, input, select, textarea, .noSwipe", tap: function (event, target){ if($(target).attr('href') && !$(target).is('[target="_blank"]') && !$(target).is('[rel^="prettyPhoto"]') && !$(target).is('.magnific-popup') && !$(target).is('.magnific')){ window.open($(target).attr('href'), '_self'); }} }, onBefore: function (){ $that.find('.work-item').trigger('mouseleave'); $that.find('.work-item .work-info a').trigger('mouseup'); }}, scroll: { items: scrollNum, easing: easing, duration: scrollSpeed, onBefore: function (){ if($('body.ascend').length > 0&&$that.parents('.carousel-wrap').attr('data-full-width')!='true' || $('body.material').length > 0&&$that.parents('.carousel-wrap').attr('data-full-width')!='true'){ $that.parents('.carousel-wrap') .find('.item-count .total') .html(Math.ceil($that.find('> li').length / $that.triggerHandler("currentVisible").length)); }}, onAfter: function (){ if($('body.ascend').length > 0&&$that.parents('.carousel-wrap').attr('data-full-width')!='true' || $('body.material').length > 0&&$that.parents('.carousel-wrap').attr('data-full-width')!='true'){ $that.parents('.carousel-wrap') .find('.item-count .current') .html($that.triggerHandler('currentPage') + 1); $that.parents('.carousel-wrap') .find('.item-count .total') .html(Math.ceil($that.find('> li').length / $that.triggerHandler("currentVisible").length)); }} }, prev: { button: function (){ return $that.parents('.carousel-wrap').find('.carousel-prev'); }}, next: { button: function (){ return $that.parents('.carousel-wrap').find('.carousel-next'); }}, auto: { play: $autoplayBool }}, { transition: true }).animate({ 'opacity': 1 }, 1300); $that .parents('.carousel-wrap') .wrap('